This commit is contained in:
高飞 2024-07-30 08:07:27 +08:00
commit d2c6125079
53 changed files with 3984 additions and 1749 deletions

View File

@ -0,0 +1,4 @@
ALTER TABLE WBS_UnitWork ALTER COLUMN SuperUnitWork NVARCHAR(50)
GO
update WBS_UnitWork set SuperUnitWork='0'
GO

View File

@ -0,0 +1,46 @@
alter table sys_menu
alter COLUMN menuname nvarchar(200);
UPDATE SYS_MENU set MenuName='工艺系统清单<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Process System List'
WHERE MENUID='197F9A9A-480C-4CC3-B6B7-3A7D382DC3EB';
UPDATE SYS_MENU set MenuName='非工艺系统清单<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Non-Process System List'
WHERE MENUID='022428DC-FC99-4916-B8AF-6A9DC885DFAF';
UPDATE SYS_MENU set MenuName='管道<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Piping'
WHERE MENUID='D94C1BA4-9DFD-4514-AE12-6F886C5D8C9B';
UPDATE SYS_MENU set MenuName='静设备<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Static Equipment'
WHERE MENUID='982F746C-084C-445C-9AE8-8C37BDFE7994';
UPDATE SYS_MENU set MenuName='动设备<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Rotating Equipment'
WHERE MENUID='7E2FB5F9-FB99-4455-B68F-460F1F9A2676';
UPDATE SYS_MENU set MenuName='仪表<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Instrumentation'
WHERE MENUID='88F51059-55B4-4CD5-A38C-36404E5029F6';
UPDATE SYS_MENU set MenuName='电气<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Electrical'
WHERE MENUID='296E75D2-192A-4D1F-8471-DD34263F8691';
UPDATE SYS_MENU set MenuName='消防<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Firefighting'
WHERE MENUID='794E64E2-FDD2-4B7D-8408-F7FB06F9C92A';
UPDATE SYS_MENU set MenuName='土建/建筑/结构<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Civil Structure'
WHERE MENUID='95C39F86-C060-452E-BA37-D891C466A39B';
UPDATE SYS_MENU set MenuName='电信<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Telecom'
WHERE MENUID='58FFBD80-ACB9-4830-A18A-E025D9600D94';
UPDATE SYS_MENU set MenuName='地管<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Plumbing'
WHERE MENUID='95295BF7-FB51-480D-9902-6ADA4E8427FC';
UPDATE SYS_MENU set MenuName='尾项管理<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Punch List Form'
WHERE MENUID='016903B1-3B86-4CF5-AFF8-FF8BE389BEE5';
alter table Transfer_PunchlistFrom
alter COLUMN Num_No nvarchar(50);
alter table Transfer_PunchlistFrom
alter COLUMN IsMatI nvarchar(50);

View File

@ -0,0 +1,21 @@
alter table Transfer_LHCSystemList
add SystemNo nvarchar(50) NULL;
insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('E305689E-5D84-4C1A-BF67-85FA2D828115','ÒÆ½»Í³¼Æ±í','Transfer/Chart/Systemstatus.aspx',50,'3517DBE2-9728-4BA0-9EA5-AE2147DB883B'
,'Menu_Transfer',0,1,1)
go
insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('60838E30-4A46-4878-B299-C234900B10B7','ÒÆ½»Í³¼ÆÍ¼±í','Transfer/Chart/SystemstatusChart.aspx',51,'3517DBE2-9728-4BA0-9EA5-AE2147DB883B'
,'Menu_Transfer',0,1,1)
go
insert into Sys_Menu(MenuId,MenuName,Url,SortIndex,SuperMenu,MenuType,IsOffice,IsEnd,IsUsed)
values('25C13642-AE77-42E2-B0FB-32663B68F93F','ÒÆ½»×´Ì¬»ã×ܱí','Transfer/Chart/SystemStatusSummary.aspx',60,'3517DBE2-9728-4BA0-9EA5-AE2147DB883B',
'Menu_Transfer',0,1,1)
go

View File

@ -636,5 +636,41 @@ namespace BLL
return string.Empty;
}
}
/// <summary>
/// 是否可增加子级
/// </summary>
/// <param name="postName"></param>
/// <returns>true-可以false-不可以</returns>
public static bool IsCanAddUnitWork(string unitWorkId)
{
var unitWork = Funs.DB.WBS_UnitWork.FirstOrDefault(x => x.UnitWorkId == unitWorkId);
if (unitWork != null)
{
if (unitWork.IsChild == true)
{
return false;
}
else
{
return true;
}
}
else
{
return true;
}
}
/// <summary>
/// 是否存在子级单位工程
/// </summary>
/// <param name="superUnitWork"></param>
/// <returns></returns>
public static bool IsExitsUnitWorkBySuperUnitWork(string superUnitWork)
{
return (from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == superUnitWork select x).Count() > 0;
}
}
}

View File

@ -750,3 +750,82 @@ IP地址:::1
出错时间:07/25/2024 13:36:33
出错时间:07/25/2024 13:36:33
错误信息开始=====>
错误类型:SqlException
错误信息:参数化查询 '(@ProjectId nvarchar(4000),@Type nvarchar(1))select * from Trans' 需要参数 '@ProjectId',但未提供该参数。
错误堆栈:
在 System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
在 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
在 System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
在 System.Data.SqlClient.SqlDataReader.TryConsumeMetaData()
在 System.Data.SqlClient.SqlDataReader.get_MetaData()
在 System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption, Boolean shouldCacheForAlwaysEncrypted)
在 System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
在 System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
在 System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
在 System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
在 System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable[] dataTables, Int32 startRecord, Int32 maxRecords, IDbCommand command, CommandBehavior behavior)
在 System.Data.Common.DbDataAdapter.Fill(DataTable dataTable)
在 BLL.SQLHelper.GetDataTableRunText(String strSql, SqlParameter[] parameters) 位置 G:\公司项目\五环\CNCEC_SUBQHSE_WUHUAN\SGGL\BLL\SQLHelper.cs:行号 311
在 FineUIPro.Web.Transfer.LHCSystemList.BindGrid() 位置 G:\公司项目\五环\CNCEC_SUBQHSE_WUHUAN\SGGL\FineUIPro.Web\Transfer\LHCSystemList.aspx.cs:行号 78
在 FineUIPro.Web.Transfer.LHCSystemList.Page_Load(Object sender, EventArgs e) 位置 G:\公司项目\五环\CNCEC_SUBQHSE_WUHUAN\SGGL\FineUIPro.Web\Transfer\LHCSystemList.aspx.cs:行号 42
在 System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e)
在 System.EventHandler.Invoke(Object sender, EventArgs e)
在 System.Web.UI.Control.OnLoad(EventArgs e)
在 System.Web.UI.Control.LoadRecursive()
在 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
出错时间:07/29/2024 16:03:19
出错文件:http://localhost:8579/Transfer/LHCSystemList.aspx?Type=0
IP地址:::1
操作人员:JT
出错时间:07/29/2024 16:03:19
错误信息开始=====>
错误类型:HttpParseException
错误信息:FineUIPro.ControlBaseCollection 必须具有类型为“FineUIPro.ControlBase”的项。“div”的类型为“System.Web.UI.HtmlControls.HtmlGenericControl”。
错误堆栈:
在 System.Web.UI.TemplateParser.ProcessException(Exception ex)
在 System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding)
在 System.Web.UI.TemplateParser.ParseString(String text, VirtualPath virtualPath, Encoding fileEncoding)
----错误类型:HttpException
----错误信息:
----FineUIPro.ControlBaseCollection 必须具有类型为“FineUIPro.ControlBase”的项。“div”的类型为“System.Web.UI.HtmlControls.HtmlGenericControl”。
----错误堆栈:
在 System.Web.UI.CollectionBuilder.GetChildControlType(String tagName, IDictionary attribs)
在 System.Web.UI.ControlBuilder.CreateChildBuilder(String filter, String tagName, IDictionary attribs, TemplateParser parser, ControlBuilder parentBuilder, String id, Int32 line, VirtualPath virtualPath, Type& childType, Boolean defaultProperty)
在 System.Web.UI.TemplateParser.ProcessBeginTag(Match match, String inputText)
在 System.Web.UI.TemplateParser.ParseStringInternal(String text, Encoding fileEncoding)
出错时间:07/29/2024 16:40:04
出错文件:http://localhost:8579/Transfer/Chart/SystemstatusChart.aspx
IP地址:::1
出错时间:07/29/2024 16:40:04
错误信息开始=====>
错误类型:HttpCompileException
错误信息:g:\公司项目\五环\CNCEC_SUBQHSE_WUHUAN\SGGL\FineUIPro.Web\Transfer\Chart\SystemstatusChart.aspx(166): error CS0103: 当前上下文中不存在名称“Two”
错误堆栈:
在 System.Web.Compilation.BuildManager.CompileWebFile(VirtualPath virtualPath)
在 System.Web.Compilation.BuildManager.GetVPathBuildResultInternal(VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
在 System.Web.Compilation.BuildManager.GetVPathBuildResultWithNoAssert(HttpContext context, VirtualPath virtualPath, Boolean noBuild, Boolean allowCrossApp, Boolean allowBuildInPrecompile, Boolean throwIfNotFound, Boolean ensureIsUpToDate)
在 System.Web.Compilation.BuildManager.GetVirtualPathObjectFactory(VirtualPath virtualPath, HttpContext context, Boolean allowCrossApp, Boolean throwIfNotFound)
在 System.Web.Compilation.BuildManager.CreateInstanceFromVirtualPath(VirtualPath virtualPath, Type requiredBaseType, HttpContext context, Boolean allowCrossApp)
在 System.Web.UI.PageHandlerFactory.GetHandlerHelper(HttpContext context, String requestType, VirtualPath virtualPath, String physicalPath)
在 System.Web.UI.PageHandlerFactory.GetHandler(HttpContext context, String requestType, String virtualPath, String path)
在 System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
在 System.Web.HttpApplication.ExecuteStepImpl(IExecutionStep step)
在 System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
出错时间:07/29/2024 16:47:59
出错文件:http://localhost:8579/Transfer/Chart/SystemstatusChart.aspx
IP地址:::1
出错时间:07/29/2024 16:47:59

View File

@ -2024,6 +2024,9 @@
<Content Include="Transfer\Chart\PunchlistFromChartNew.aspx" />
<Content Include="Transfer\Chart\PunchlistFromProgress.aspx" />
<Content Include="Transfer\Chart\PunchlistFromSort.aspx" />
<Content Include="Transfer\Chart\Systemstatus.aspx" />
<Content Include="Transfer\Chart\SystemstatusChart.aspx" />
<Content Include="Transfer\Chart\SystemStatusSummary.aspx" />
<Content Include="Transfer\Chart\TransferChart.aspx" />
<Content Include="Transfer\CivilStructure.aspx" />
<Content Include="Transfer\CivilStructureDataIn.aspx" />
@ -2045,6 +2048,7 @@
<Content Include="Transfer\ProjectSetupDataIn.aspx" />
<Content Include="Transfer\PunchlistFrom.aspx" />
<Content Include="Transfer\PunchlistFromDataIn.aspx" />
<Content Include="Transfer\PunchlistFromEdit.aspx" />
<Content Include="Transfer\RotatingEquipment.aspx" />
<Content Include="Transfer\RotatingEquipmentDataIn.aspx" />
<Content Include="Transfer\StaticEquipment.aspx" />
@ -17611,6 +17615,27 @@
<Compile Include="Transfer\Chart\PunchlistFromSort.aspx.designer.cs">
<DependentUpon>PunchlistFromSort.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\Chart\Systemstatus.aspx.cs">
<DependentUpon>Systemstatus.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Transfer\Chart\Systemstatus.aspx.designer.cs">
<DependentUpon>Systemstatus.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\Chart\SystemstatusChart.aspx.cs">
<DependentUpon>SystemstatusChart.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Transfer\Chart\SystemstatusChart.aspx.designer.cs">
<DependentUpon>SystemstatusChart.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\Chart\SystemStatusSummary.aspx.cs">
<DependentUpon>SystemStatusSummary.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Transfer\Chart\SystemStatusSummary.aspx.designer.cs">
<DependentUpon>SystemStatusSummary.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\Chart\TransferChart.aspx.cs">
<DependentUpon>TransferChart.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@ -17758,6 +17783,13 @@
<Compile Include="Transfer\PunchlistFromDataIn.aspx.designer.cs">
<DependentUpon>PunchlistFromDataIn.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\PunchlistFromEdit.aspx.cs">
<DependentUpon>PunchlistFromEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="Transfer\PunchlistFromEdit.aspx.designer.cs">
<DependentUpon>PunchlistFromEdit.aspx</DependentUpon>
</Compile>
<Compile Include="Transfer\RotatingEquipment.aspx.cs">
<DependentUpon>RotatingEquipment.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress>false</Use64BitIISExpress>
<IISExpressSSLPort />

View File

@ -4,129 +4,122 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>单位工程</title>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="false" Title="单位工程设置" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="UnitWorkId" AllowCellEditing="true" ForceFit="true"
ClicksToEdit="2" DataIDField="UnitWorkId" AllowSorting="true" SortField="UnitWorkCode"
SortDirection="ASC" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10"
EnableRowDoubleClickEvent="true" AllowFilters="true" EnableTextSelection="True" OnRowDoubleClick="Grid1_RowDoubleClick" OnPageIndexChange="Grid1_PageIndexChange">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox ID="txtUnitWorkCode" runat="server" Label="单位工程编号" Width="250px" LabelWidth="110px"
LabelAlign="Right">
</f:TextBox>
<f:TextBox ID="txtUnitWorkName" runat="server" Label="单位工程名称" Width="250px" LabelWidth="120px"
LabelAlign="Right">
</f:TextBox>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSearch" Icon="SystemSearch"
EnablePostBack="true" runat="server" OnClick="btnSearch_Click">
</f:Button>
<f:Button ID="btnRset" OnClick="btnRset_Click" ToolTip="重置" Icon="ArrowUndo" EnablePostBack="true" runat="server">
</f:Button>
<f:Button ID="btnNew" Icon="Add" EnablePostBack="true" Hidden="true"
runat="server">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="120px" ColumnID="UnitWorkCode" DataField="UnitWorkCode"
SortField="UnitWorkCode" FieldType="String" HeaderText="单位工程编号" TextAlign="center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="UnitWorkName" DataField="UnitWorkName"
SortField="UnitWorkName" FieldType="String" HeaderText="单位工程名称" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<%--<f:RenderField Width="100px" ColumnID="ProjectType" DataField="ProjectType" SortField="ProjectType"
FieldType="String" HeaderText="所属工程" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField HeaderText="建安工程费(万元)" ColumnID="Costs" DataField="Costs"
SortField="Costs" HeaderTextAlign="Center" TextAlign="Center" Width="150px"
FieldType="String">
</f:RenderField>
<f:RenderField HeaderText="权重%" ColumnID="Weights" DataField="Weights"
SortField="Weights" HeaderTextAlign="Center" TextAlign="Center" Width="80px"
FieldType="String">
</f:RenderField>--%>
<%--<f:RenderField HeaderText="施工单位" ColumnID="UnitId" DataField="UnitId"
SortField="UnitId" HeaderTextAlign="Center" TextAlign="Center" Width="120px"
FieldType="String">
</f:RenderField>
<f:RenderField HeaderText="监理单位" ColumnID="SupervisorUnitId" DataField="SupervisorUnitId"
SortField="SupervisorUnitId" HeaderTextAlign="Center" TextAlign="Center" Width="120px"
FieldType="String">
</f:RenderField>
<f:RenderField HeaderText="检测单位" ColumnID="NDEUnit" DataField="NDEUnit"
SortField="NDEUnit" HeaderTextAlign="Center" TextAlign="Center" Width="120px"
FieldType="String">
</f:RenderField>--%>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</Listeners>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true" OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
<f:ToolbarFill runat="server">
</f:ToolbarFill>
</PageItems>
</f:Grid>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="单位工程" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" OnClose="Window1_Close"
Width="550px" Height="250px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<Items>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Hidden="true" Text="修改" Icon="Pencil"
OnClick="btnMenuModify_Click">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" EnablePostBack="true" runat="server" Text="查看" Icon="ApplicationViewIcons" OnClick="btnMenuView_Click">
</f:MenuButton>
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Hidden="true" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"
OnClick="btnMenuDel_Click">
</f:MenuButton>
</Items>
</f:Menu>
<form id="form1" runat="server"><f:PageManager ID="PageManager1" AutoSizePanelID="RegionPanel1" runat="server" />
<f:RegionPanel ID="RegionPanel1" ShowBorder="false" runat="server" Margin="5px">
<Regions>
<f:Region ID="Region1" ShowBorder="false" ShowHeader="false" RegionPosition="Left"
Title="单位工程" BodyPadding="0 5 0 0" Width="300px" Layout="Fit" runat="server"
EnableCollapse="true">
<Items>
<f:Panel runat="server" ID="panel2" RegionPosition="Left" RegionSplit="true" EnableCollapse="true"
Width="400" Title="单位工程" TitleToolTip="单位工程" ShowBorder="true" ShowHeader="true"
BodyPadding="5px" IconFont="ArrowCircleLeft">
<Items>
<f:Tree ID="trProjects" Width="290" Height="490px" EnableCollapse="true" ShowHeader="true"
OnNodeCommand="trProjects_NodeCommand" OnNodeExpand="trProjects_NodeExpand" AutoLeafIdentification="true"
runat="server">
<Listeners>
<f:Listener Event="beforenodecontextmenu" Handler="onTreeNodeContextMenu" />
</Listeners>
</f:Tree>
<f:HiddenField runat="server" ID="hdSelectId">
</f:HiddenField>
</Items>
</f:Panel>
</Items>
</f:Region>
<f:Region ID="Region2" ShowBorder="false" ShowHeader="false" Position="Center" Layout="VBox"
BoxConfigAlign="Stretch" BoxConfigPosition="Left" runat="server">
<Items>
<f:Grid ID="Grid1" Width="870px" ShowBorder="true" ShowHeader="false" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="UnitWorkId" AllowSorting="true" EnableColumnLines="true"
SortField="UnitWorkCode" SortDirection="ASC" AllowCellEditing="true" ClicksToEdit="1" ForceFit="true"
ShowSelectedCell="true" DataIDField="UnitWorkId" AllowPaging="true" IsDatabasePaging="true"
PageSize="10" OnPageIndexChange="Grid1_PageIndexChange" AllowFilters="true" OnFilterChange="Grid1_FilterChange">
<Columns>
<f:RenderField Width="150px" ColumnID="UnitWorkCode" DataField="UnitWorkCode" FieldType="String"
HeaderText="单位工程编号" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="UnitWorkName" DataField="UnitWorkName" FieldType="String"
HeaderText="单位工程名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
</Items>
</f:Region>
</Regions>
</f:RegionPanel>
<f:Window ID="Window1" Title="编辑" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="800px" Height="300px">
</f:Window>
<f:Window ID="Window2" Title="增加" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Self" EnableResize="true" runat="server" OnClose="Window2_Close" IsModal="true"
Width="800px" Height="300px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuAdd" OnClick="btnMenuAdd_Click" EnablePostBack="true" runat="server" Icon="Add" Hidden="true"
Text="增加">
</f:MenuButton>
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true" Icon="Pencil" Hidden="true"
runat="server" Text="修改">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true" Icon="Delete" Hidden="true"
ConfirmText="确认删除选中项?" ConfirmTarget="Top" runat="server" Text="删除">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var treeID = '<%= trProjects.ClientID %>';
var menuID = '<%= Menu1.ClientID %>';
// 保存当前菜单对应的树节点ID
var currentNodeId;
// 返回false来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
function onTreeNodeContextMenu(event, nodeId) {
currentNodeId = nodeId;
F(menuID).show();
return false;
}
// 设置所有菜单项的禁用状态
function setMenuItemsDisabled(disabled) {
var menu = F(menuID);
$.each(menu.items, function (index, item) {
item.setDisabled(disabled);
});
}
// 显示菜单后,检查是否禁用菜单项
function onMenuShow() {
if (currentNodeId) {
var tree = F(treeID);
var nodeData = tree.getNodeData(currentNodeId);
if (nodeData.leaf) {
setMenuItemsDisabled(true);
} else {
setMenuItemsDisabled(false);
}
}
}
</script>
</body>
</html>

View File

@ -2,170 +2,28 @@
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
namespace FineUIPro.Web.ProjectData
{
public partial class UnitWork : PageBase
{
#region
/// <summary>
/// 项目id
/// 页面加载
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.ProjectId = this.CurrUser.LoginProjectId;
GetButtonPower();
ddlPageSize.SelectedValue = Grid1.PageSize.ToString();
// 绑定表格
BindGrid();
btnNew.OnClientClick = Window1.GetShowReference("UnitWorkEdit.aspx") + "return false;";
InitTreeMenu();
}
}
/// <summary>
/// 绑定数据
/// </summary>
#endregion
public void BindGrid()
{
if (!string.IsNullOrEmpty(this.CurrUser.LoginProjectId))
{
DataTable tb = ChecklistData(this.CurrUser.LoginProjectId);
Grid1.RecordCount = tb.Rows.Count;
tb = GetFilteredTable(Grid1.FilteredData, tb);
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
Grid1.DataBind();
}
}
protected DataTable ChecklistData(string projectId)
{
string strSql = @"select UnitWorkId,UnitWorkCode,UnitWorkName,Costs,Weights,MainItemAndDesignProfessionalIds,SuperUnitWork,(case IsChild when '1' then 'true' else 'false' end) isChild,(case ProjectType when '1' then '建筑工程' when '2' then '安装工程' else '' end ) ProjectType ,Unit.UnitName AS UnitId,SupervisorUnit.UnitName AS SupervisorUnitId,NDEUnit.UnitName AS NDEUnit from [dbo].[WBS_UnitWork] AS UnitWork
Left join Base_Unit AS Unit on UnitWork.UnitId=Unit.UnitId
Left join Base_Unit AS SupervisorUnit on UnitWork.SupervisorUnitId=SupervisorUnit.UnitId
Left join Base_Unit AS NDEUnit on UnitWork.NDEUnit=NDEUnit.UnitId where ProjectId=@ProjectId ";
List<SqlParameter> listStr = new List<SqlParameter>
{
new SqlParameter("@ProjectId", projectId)
};
if (!string.IsNullOrEmpty(this.txtUnitWorkCode.Text.Trim()))
{
strSql += " AND UnitWorkCode like @UnitWorkCode";
listStr.Add(new SqlParameter("@UnitWorkCode", "%" + this.txtUnitWorkCode.Text.Trim() + "%"));
}
if (!string.IsNullOrEmpty(this.txtUnitWorkName.Text.Trim()))
{
strSql += " AND UnitWorkName like @UnitWorkName";
listStr.Add(new SqlParameter("@UnitWorkName", "%" + this.txtUnitWorkName.Text.Trim() + "%"));
}
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
return tb;
}
protected void btnMenuModify_Click(object sender, EventArgs e)
{
EditData();
}
protected void btnMenuDel_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
string message = string.Empty;
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var unitwork = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(rowID);
if (unitwork != null)
{
string rowMessage= this.judgementDelete(rowID, unitwork.UnitWorkName);
if (string.IsNullOrEmpty(rowMessage))
{
BLL.BreakdownProjectService.DeleteAllBreakdownByUnitWorkId(rowID);
BLL.DivisionProjectService.DeleteDivisionProjectByUnitWorkId(rowID);
BLL.UnitWorkService.DeleteUnitWorkById(rowID);
}
else
{
message += rowMessage;
}
}
}
BindGrid();
if (string.IsNullOrEmpty(message))
{
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
}
else
{
Alert.ShowInParent(message, MessageBoxIcon.Warning);
}
}
}
/// <summary>
/// 判断是否可删除
/// </summary>
/// <param name="rowID"></param>
/// <param name="isShow"></param>
/// <returns></returns>
private string judgementDelete(string rowID,string name)
{
string content = string.Empty;
var inspection = from x in Funs.DB.ProcessControl_InspectionManagement where x.UnitWorkId == rowID select x;
foreach (var item in inspection)
{
content += "共检通知单【"+ item.InspectionCode+ "】";
}
if (!string.IsNullOrEmpty(content))
{
content += "中已使用单位工程【" + name + "】!";
}
return content;
}
/// <summary>
/// 编辑数据方法
/// </summary>
private void EditData()
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录", MessageBoxIcon.Warning);
return;
}
if (this.btnMenuModify.Hidden) ////双击事件 编辑权限有:编辑页面,无:查看页面 或者状态是完成时查看页面
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UnitWorkView.aspx?UnitWorkId={0}", Grid1.SelectedRowID, "查看 - ")));
}
else
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UnitWorkEdit.aspx?UnitWorkId={0}", Grid1.SelectedRowID, "编辑 - ")));
}
}
#region
/// <summary>
/// 获取按钮权限
@ -178,85 +36,498 @@ namespace FineUIPro.Web.ProjectData
{
return;
}
var buttonList = BLL.CommonService.GetAllButtonList(this.ProjectId, this.CurrUser.UserId, BLL.Const.UnitWorkMenuId);
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UnitWorkMenuId);
if (buttonList.Count() > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
this.btnNew.Hidden = false;
this.btnMenuAdd.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnMenuModify.Hidden = false;
this.btnMenuEdit.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
this.btnMenuDel.Hidden = false;
this.btnMenuDelete.Hidden = false;
}
}
}
#endregion
#region
/// <summary>
/// 获取对应主项及设计专业
/// 加载树
/// </summary>
/// <param name="UnitWorks"></param>
/// <returns></returns>
protected string ConvertDesignProfessionalName(object MainItemAndDesignProfessionalIds)
private void InitTreeMenu()
{
string ProfessionalName = string.Empty;
if (MainItemAndDesignProfessionalIds != null)
this.trProjects.Nodes.Clear();
this.trProjects.ShowBorder = false;
this.trProjects.ShowHeader = false;
this.trProjects.EnableIcons = true;
this.trProjects.AutoScroll = true;
this.trProjects.EnableSingleClickExpand = true;
Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
if (project != null)
{
ProfessionalName = UnitWorkService.GetMainItemAndDesignProfessionalName(MainItemAndDesignProfessionalIds.ToString(), CurrUser.LoginProjectId);
TreeNode node = new TreeNode();
node.Text = project.ProjectName;
node.NodeID = project.ProjectId;
node.CommandName = "project";
node.EnableClickEvent = true;
node.EnableExpandEvent = true;
this.trProjects.Nodes.Add(node);
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
node.Nodes.Add(emptyNode);
}
return ProfessionalName;
}
protected void btnSearch_Click(object sender, EventArgs e)
#endregion
#region
/// <summary>
/// 展开树
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void trProjects_NodeExpand(object sender, TreeNodeEventArgs e)
{
e.Node.Nodes.Clear();
if (e.Node.CommandName == "project") //展开项目节点
{
var unitWorks = from x in Funs.DB.WBS_UnitWork
where x.ProjectId == e.Node.NodeID && x.SuperUnitWork == "0"
orderby x.UnitWorkCode
select x;
foreach (var unitWork in unitWorks)
{
TreeNode newNode = new TreeNode();
newNode.Text = unitWork.UnitWorkName;
newNode.NodeID = unitWork.UnitWorkId;
newNode.CommandName = "unitWork";
newNode.EnableExpandEvent = true;
newNode.EnableClickEvent = true;
e.Node.Nodes.Add(newNode);
var installation2s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == unitWork.UnitWorkId orderby x.UnitWorkCode select x;
if (installation2s.Count() > 0)
{
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
newNode.Nodes.Add(emptyNode);
}
}
}
else if (e.Node.CommandName == "unitWork") //展开装置/单元节点
{
var unitWorks = from x in Funs.DB.WBS_UnitWork
where x.SuperUnitWork == e.Node.NodeID
orderby x.UnitWorkCode
select x;
foreach (var unitWork in unitWorks)
{
TreeNode newNode = new TreeNode();
newNode.Text = unitWork.UnitWorkName;
newNode.NodeID = unitWork.UnitWorkId;
newNode.CommandName = "unitWork";
newNode.EnableExpandEvent = true;
newNode.EnableClickEvent = true;
e.Node.Nodes.Add(newNode);
var installation3s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == unitWork.UnitWorkId orderby x.UnitWorkCode select x;
if (installation3s.Count() > 0)
{
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
newNode.Nodes.Add(emptyNode);
}
}
}
}
#endregion
#region Tree点击事件
/// <summary>
/// Tree点击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void trProjects_NodeCommand(object sender, TreeCommandEventArgs e)
{
if (this.Grid1.Rows.Count > 0)
{
SaveData();
}
BindGrid();
}
#endregion
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
#region
/// <summary>
/// 保存方法
/// </summary>
private void SaveData()
{
EditData();
//string rowId = this.Grid1.Rows[0].RowID;
//string type = this.Grid1.Rows[0].Values[4].ToString();
//if (type == "unitProject")
//{
// Model.Wbs_UnitProjectInit unitProject = BLL.UnitProjectInitService.GetUnitProjectInitByUnitProjectCode(rowId);
// if (unitProject != null)
// {
// BLL.UnitProjectInitService.UpdateUnitProjectInit(unitProject);
// }
//}
//else if (type == "wbsSet")
//{
// Model.WBS_WbsSetInit wbsSet = BLL.WbsSetInitService.GetWbsSetInitByWbsSetCode(rowId);
// if (wbsSet != null)
// {
// var childWbsSets = BLL.WbsSetInitService.GetWbsSetInitsBySuperWbsSetCode(this.trProjects.SelectedNodeID);
// //wbsSet.StartDate = Convert.ToDateTime(this.Grid1.Rows[0].Values[2].ToString());
// //wbsSet.EndDate = Convert.ToDateTime(this.Grid1.Rows[0].Values[3].ToString());
// BLL.WbsSetInitService.UpdateWbsSetInit(wbsSet);
// }
//}
}
#endregion
#region
/// <summary>
/// 关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
ShowNotify("修改成功!", MessageBoxIcon.Success);
getWBSSet();
}
#endregion
#region
/// <summary>
/// 拷贝关闭窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window2_Close(object sender, WindowCloseEventArgs e)
{
ShowNotify("增加成功!", MessageBoxIcon.Success);
getWBSSet();
}
#endregion
#region
/// <summary>
/// 右键修改事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuEdit_Click(object sender, EventArgs e)
{
if (this.trProjects.SelectedNode != null && this.trProjects.SelectedNode.CommandName != "project")
{
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UnitWorkMenuId, BLL.Const.BtnModify))
{
this.hdSelectId.Text = this.trProjects.SelectedNode.NodeID;
PageContext.RegisterStartupScript(Window2.GetShowReference(String.Format("UnitWorkEdit.aspx?Id={0}", this.trProjects.SelectedNode.NodeID, "编辑 - ")));
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify("项目节点无法修改!", MessageBoxIcon.Warning);
}
}
/// <summary>
/// 增加
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuAdd_Click(object sender, EventArgs e)
{
if (this.trProjects.SelectedNode != null)
{
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UnitWorkMenuId, BLL.Const.BtnAdd))
{
string openUrl = String.Format("UnitWorkEdit.aspx?SuperId={0}", this.trProjects.SelectedNode.NodeID, "增加 - ");
PageContext.RegisterStartupScript(Window2.GetSaveStateReference(hdSelectId.ClientID)
+ Window2.GetShowReference(openUrl));
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify("请选择树节点!", MessageBoxIcon.Warning);
}
}
protected void btnMenuView_Click(object sender, EventArgs e)
/// <summary>
/// 右键删除事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnMenuDelete_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
if (this.trProjects.SelectedNode != null)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
if (BLL.CommonService.GetAllButtonPowerList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.UnitWorkMenuId, BLL.Const.BtnDelete))
{
if (this.trProjects.SelectedNode.CommandName != "project") //非专业节点可以删除
{
string id = this.trProjects.SelectedNode.NodeID;
Model.WBS_UnitWork unitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(id);
if (unitWork.SuperUnitWork == "0") //删除一级装置
{
BLL.UnitWorkService.DeleteUnitWorkById(id);
var unitWork2s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == id select x;
foreach (var unitWork2 in unitWork2s)
{
BLL.UnitWorkService.DeleteUnitWorkById(unitWork2.UnitWorkId);
var unitWork3s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == unitWork2.UnitWorkId select x;
foreach (var unitWork3 in unitWork3s)
{
BLL.UnitWorkService.DeleteUnitWorkById(unitWork3.UnitWorkId);
}
}
}
else
{
Model.WBS_UnitWork unitWork2 = BLL.UnitWorkService.getUnitWorkByUnitWorkId(id);
Model.WBS_UnitWork unitWork1 = BLL.UnitWorkService.getUnitWorkByUnitWorkId(unitWork2.SuperUnitWork);
if (unitWork1.SuperUnitWork == "0") //删除二级装置
{
BLL.UnitWorkService.DeleteUnitWorkById(id);
var unitWork3s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == id select x;
foreach (var unitWork3 in unitWork3s)
{
BLL.UnitWorkService.DeleteUnitWorkById(unitWork3.UnitWorkId);
}
}
else //删除二级装置
{
BLL.UnitWorkService.DeleteUnitWorkById(id);
}
}
ShowNotify("删除成功!", MessageBoxIcon.Success);
InitTreeMenu();
}
else
{
ShowNotify("项目节点无法删除!", MessageBoxIcon.Warning);
}
}
else
{
ShowNotify("您没有这个权限,请与管理员联系!", MessageBoxIcon.Warning);
}
}
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("UnitWorkView.aspx?UnitWorkId={0}", Grid1.SelectedRowID, "查看 - ")));
else
{
ShowNotify("请选择树节点!", MessageBoxIcon.Warning);
}
}
#endregion
#region
/// <summary>
/// 绑定数据
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_FilterChange(object sender, EventArgs e)
{
BindGrid();
}
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
Grid1.PageIndex = e.NewPageIndex;
BindGrid();
}
/// <summary>
/// Grid1排序
/// </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();
}
/// <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();
}
/// <summary>
/// 重置
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnRset_Click(object sender, EventArgs e)
{
txtUnitWorkCode.Text = "";
txtUnitWorkName.Text = "";
BindGrid();
}
protected void Window1_Close(object sender, WindowCloseEventArgs e)
/// <summary>
/// 加载Grid
/// </summary>
private void BindGrid()
{
List<Model.WBS_UnitWork> items = new List<Model.WBS_UnitWork>();
if (this.trProjects.SelectedNode != null)
{
if (this.trProjects.SelectedNode.CommandName == "unitWork")
{
Model.WBS_UnitWork installation = BLL.UnitWorkService.getUnitWorkByUnitWorkId(this.trProjects.SelectedNode.NodeID);
Model.WBS_UnitWork item = new Model.WBS_UnitWork();
if (installation != null)
{
item.UnitWorkId = installation.UnitWorkId;
item.UnitWorkCode = installation.UnitWorkCode;
item.UnitWorkName = installation.UnitWorkName;
//item.ProjectType = "unitWork";
items.Add(item);
}
}
this.Grid1.DataSource = items;
this.Grid1.DataBind();
}
}
#endregion
#region Id定位到对应装置
/// <summary>
/// 根据所给Id定位到对应装置
/// </summary>
private void getWBSSet()
{
string unitWorkId = string.Empty;
string pUnitWorkId = string.Empty;
string ppUnitWorkId = string.Empty;
string projectId = this.CurrUser.LoginProjectId;
string id = this.hdSelectId.Text;
Model.WBS_UnitWork installation = BLL.UnitWorkService.getUnitWorkByUnitWorkId(id);
if (installation.SuperUnitWork == "0") //一级装置
{
ppUnitWorkId = id;
}
else
{
if (BLL.UnitWorkService.IsCanAddUnitWork(id)) //二级装置
{
pUnitWorkId = id;
ppUnitWorkId = installation.SuperUnitWork;
}
else //三级装置
{
unitWorkId = id;
pUnitWorkId = installation.SuperUnitWork;
Model.WBS_UnitWork pInstallation = BLL.UnitWorkService.getUnitWorkByUnitWorkId(installation.SuperUnitWork);
if (pInstallation != null)
{
ppUnitWorkId = pInstallation.SuperUnitWork;
}
}
}
this.trProjects.Nodes.Clear();
this.trProjects.ShowBorder = false;
this.trProjects.ShowHeader = false;
this.trProjects.EnableIcons = true;
this.trProjects.AutoScroll = true;
this.trProjects.EnableSingleClickExpand = true;
Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(this.CurrUser.LoginProjectId);
if (project != null)
{
TreeNode node = new TreeNode();
node.Text = project.ProjectName;
node.NodeID = project.ProjectId;
node.EnableClickEvent = true;
this.trProjects.Nodes.Add(node);
node.Expanded = true;
var unitWork1s = from x in Funs.DB.WBS_UnitWork
where x.ProjectId == projectId && x.SuperUnitWork == "0"
orderby x.UnitWorkCode
select x;
foreach (var unitWork1 in unitWork1s)
{
TreeNode newNode1 = new TreeNode();
newNode1.Text = unitWork1.UnitWorkName;
newNode1.NodeID = unitWork1.UnitWorkId;
newNode1.CommandName = "unitWork";
newNode1.EnableExpandEvent = true;
newNode1.EnableClickEvent = true;
node.Nodes.Add(newNode1);
if (unitWork1.UnitWorkId == ppUnitWorkId)
{
newNode1.Expanded = true;
var unitWork2s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == unitWork1.SuperUnitWork orderby x.UnitWorkCode select x;
foreach (var unitWork2 in unitWork2s)
{
TreeNode newNode2 = new TreeNode();
newNode2.Text = unitWork2.UnitWorkName;
newNode2.NodeID = unitWork2.UnitWorkId;
newNode2.CommandName = "unitWork";
newNode2.EnableExpandEvent = true;
newNode2.EnableClickEvent = true;
newNode1.Nodes.Add(newNode2);
if (unitWork2.UnitWorkId == pUnitWorkId)
{
newNode2.Expanded = true;
var unitWork3s = from x in Funs.DB.WBS_UnitWork where x.SuperUnitWork == unitWork2.UnitWorkId orderby x.UnitWorkCode select x;
foreach (var unitWork3 in unitWork3s)
{
TreeNode newNode3 = new TreeNode();
newNode3.Text = unitWork3.UnitWorkName;
newNode3.NodeID = unitWork3.UnitWorkId;
newNode3.CommandName = "unitWork";
newNode3.EnableExpandEvent = true;
newNode3.EnableClickEvent = true;
newNode2.Nodes.Add(newNode3);
}
}
else
{
if (BLL.UnitWorkService.IsExitsUnitWorkBySuperUnitWork(unitWork2.UnitWorkId))
{
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
newNode2.Nodes.Add(emptyNode);
}
}
}
}
else
{
if (BLL.UnitWorkService.IsExitsUnitWorkBySuperUnitWork(unitWork1.UnitWorkId))
{
TreeNode emptyNode = new TreeNode();
emptyNode.Text = "";
emptyNode.NodeID = "";
newNode1.Nodes.Add(emptyNode);
}
}
}
}
this.trProjects.SelectedNodeID = this.hdSelectId.Text;
BindGrid();
}
#endregion
}
}

View File

@ -31,13 +31,58 @@ namespace FineUIPro.Web.ProjectData {
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// RegionPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
protected global::FineUIPro.RegionPanel RegionPanel1;
/// <summary>
/// Region1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Region Region1;
/// <summary>
/// panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panel2;
/// <summary>
/// trProjects 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tree trProjects;
/// <summary>
/// hdSelectId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdSelectId;
/// <summary>
/// Region2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Region Region2;
/// <summary>
/// Grid1 控件。
@ -48,69 +93,6 @@ namespace FineUIPro.Web.ProjectData {
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// txtUnitWorkCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUnitWorkCode;
/// <summary>
/// txtUnitWorkName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtUnitWorkName;
/// <summary>
/// btnSearch 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnRset 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnRset;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
@ -147,6 +129,15 @@ namespace FineUIPro.Web.ProjectData {
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Window2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Menu1 控件。
/// </summary>
@ -157,30 +148,30 @@ namespace FineUIPro.Web.ProjectData {
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuModify 控件。
/// btnMenuAdd 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
protected global::FineUIPro.MenuButton btnMenuAdd;
/// <summary>
/// btnMenuView 控件。
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuView;
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDel 控件。
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDel;
protected global::FineUIPro.MenuButton btnMenuDelete;
}
}

View File

@ -4,59 +4,31 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>单位工程</title>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>编辑单位工程</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" />
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow runat="server">
<f:FormRow>
<Items>
<f:TextBox ID="txtUnitWorkCode" runat="server" Label="单位工程编号"
Required="true" MaxLength="70" ShowRedStar="true" LabelWidth="150px">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow runat="server">
<Items>
<f:TextBox ID="txtUnitWorkName" runat="server" Label="单位工程名称"
Required="true" MaxLength="70" ShowRedStar="true" LabelWidth="150px">
</f:TextBox>
<f:TextBox ID="txtUnitWorkCode" runat="server" Label="单位工程编号" LabelWidth="140px" Required="true" ShowRedStar="true" FocusOnPageLoad="true"></f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox runat="server" ID="txtCosts" Label="建安工程费(万元)" Hidden="true" LabelWidth="150px" NoDecimal="false" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList runat="server" ID="drpUnit" Label="施工单位" LabelWidth="150px" ShowRedStar="true" Hidden="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList runat="server" ID="drpSupervisorUnit" Label="监理单位" LabelWidth="150px" Hidden="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList runat="server" ID="drpNDEUnit" Label="检测单位" LabelWidth="150px" Hidden="true"></f:DropDownList>
</Items>
<f:TextBox ID="txtUnitWorkName" runat="server" Label="单位工程名称" LabelWidth="140px" Required="true" ShowRedStar="true"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdCheckerId" runat="server">
</f:HiddenField>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ValidateForms="SimpleForm1" OnClick="btnSave_Click" AjaxLoadingType="Mask" ShowAjaxLoadingMaskText="true" AjaxLoadingMaskText="正在拷贝分部、分项工程数据,请稍候">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false"
runat="server" Icon="SystemClose">
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存数据" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>

View File

@ -1,372 +1,68 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.ProjectData
{
public partial class UnitWorkEdit : PageBase
{
/// <summary>
/// 项目id
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
private static string superId;
private static string id;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpUnit, this.CurrUser.LoginProjectId, Const.ProjectUnitType_2, true);//施工
BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpSupervisorUnit, this.CurrUser.LoginProjectId, Const.ProjectUnitType_3, true);//监理
BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList(drpNDEUnit, this.CurrUser.LoginProjectId, Const.ProjectUnitType_5, true);//检测
string UnitWorkId = Request.Params["UnitWorkId"];
if (!string.IsNullOrEmpty(UnitWorkId))
superId = Request.Params["SuperId"];
id = Request.Params["Id"];
Model.WBS_UnitWork unitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(id);
if (unitWork != null)
{
Model.WBS_UnitWork UnitWork = BLL.UnitWorkService.GetUnitWorkByUnitWorkId(UnitWorkId);
if (UnitWork != null)
{
this.ProjectId = UnitWork.ProjectId;
this.txtUnitWorkCode.Text = UnitWork.UnitWorkCode;
this.txtUnitWorkName.Text = UnitWork.UnitWorkName;
if (UnitWork.Costs != null)
{
this.txtCosts.Text = UnitWork.Costs.ToString();
}
if (!string.IsNullOrEmpty(UnitWork.UnitId))
{
this.drpUnit.SelectedValue = UnitWork.UnitId;
}
if (!string.IsNullOrEmpty(UnitWork.SupervisorUnitId))
{
this.drpSupervisorUnit.SelectedValue = UnitWork.SupervisorUnitId;
}
if (!string.IsNullOrEmpty(UnitWork.NDEUnit))
{
this.drpNDEUnit.SelectedValue = UnitWork.NDEUnit;
}
}
this.txtUnitWorkCode.Text = unitWork.UnitWorkCode;
this.txtUnitWorkName.Text = unitWork.UnitWorkName;
}
}
}
protected void btnSave_Click(object sender, EventArgs e)
{
SaveData(true);
}
private void SaveData(bool bl)
{
//if (this.drpProjectType.SelectedValue == BLL.Const._Null)
//{
// Alert.ShowInTop("所属工程不能为空!", MessageBoxIcon.Warning);
// return;
//}
string UnitWorkId = Request.Params["UnitWorkId"];
Model.WBS_UnitWork UnitWork = new Model.WBS_UnitWork();
UnitWork.ProjectId = this.CurrUser.LoginProjectId;
UnitWork.UnitWorkCode = this.txtUnitWorkCode.Text.Trim();
UnitWork.UnitWorkName = this.txtUnitWorkName.Text.Trim();
//if (this.drpUnit.SelectedValue != BLL.Const._Null)
//{
// UnitWork.UnitId = this.drpUnit.SelectedValue;
//}
//else
//{
// Alert.ShowInTop("请选择施工单位!");
// return;
//}
if (this.drpSupervisorUnit.SelectedValue != BLL.Const._Null)
string projectId = string.Empty;
string superUnitWorkId = string.Empty;
Model.Base_Project project = BLL.ProjectService.GetProjectByProjectId(superId);
Model.WBS_UnitWork parUnitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(superId);
if (project != null)
{
UnitWork.SupervisorUnitId = this.drpSupervisorUnit.SelectedValue;
projectId = project.ProjectId;
superUnitWorkId = "0";
}
if (this.drpNDEUnit.SelectedValue != BLL.Const._Null)
else if (parUnitWork != null)
{
UnitWork.NDEUnit = this.drpNDEUnit.SelectedValue;
projectId = parUnitWork.ProjectId;
superUnitWorkId = superId;
}
if (!string.IsNullOrEmpty(this.txtCosts.Text.Trim()))
{
UnitWork.Costs = Convert.ToDecimal(this.txtCosts.Text.Trim());
}
if (!string.IsNullOrEmpty(UnitWorkId))
{
UnitWork.UnitWorkId = UnitWorkId;
BLL.UnitWorkService.UpdateUnitWork(UnitWork);
var divisionProject = Funs.DB.WBS_DivisionProject.FirstOrDefault(x => x.UnitWorkId == UnitWork.UnitWorkId);
if (divisionProject == null)
{
#region WBS内容
//拷贝分部及子分部
var divisions1 = from x in Funs.DB.WBS_Division where x.SuperDivisionId == null select x;
foreach (var d1 in divisions1)
{
Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject();
newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject));
newDivisionProject.ProjectId = this.CurrUser.LoginProjectId;
newDivisionProject.DivisionCode = d1.DivisionCode;
newDivisionProject.DivisionName = d1.DivisionName;
newDivisionProject.SortIndex = d1.SortIndex;
newDivisionProject.SuperDivisionId = d1.SuperDivisionId;
newDivisionProject.CNProfessionalId = d1.CNProfessionalId;
newDivisionProject.UnitWorkId = UnitWork.UnitWorkId;
newDivisionProject.OldDivisionId = d1.DivisionId;
newDivisionProject.SubItemType = d1.SubItemType;
BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); //分部
List<Model.WBS_Division> divisions2 = (from x in Funs.DB.WBS_Division where x.SuperDivisionId == d1.DivisionId select x).ToList();
if (divisions2.Count() > 0)
{
this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, UnitWork.UnitWorkId);
}
}
//拷贝分项
var breakdowns = from x in Funs.DB.WBS_Breakdown select x;
foreach (var b in breakdowns)
{
Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject();
bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject));
bp.ProjectId = this.CurrUser.LoginProjectId;
bp.BreakdownCode = b.BreakdownCode;
bp.BreakdownName = b.BreakdownName;
bp.DivisionProjectId = (from x in Funs.DB.WBS_DivisionProject where x.OldDivisionId == b.DivisionId && x.UnitWorkId == UnitWork.UnitWorkId select x.DivisionProjectId).FirstOrDefault();
bp.Basis = b.Basis;
bp.CheckPoints = b.CheckPoints;
bp.RecordAndCode = b.RecordAndCode;
bp.Class = b.Class;
bp.SortIndex = b.SortIndex;
bp.Remark = b.Remark;
bp.ModelURL = b.ModelURL;
bp.UnitWorkId = UnitWork.UnitWorkId;
bp.IsAcceptance = b.IsAcceptance;
bp.IsYellow = b.IsYellow;
bp.WuHuan = b.WuHuan;
bp.JianLi = b.JianLi;
bp.FenBao = b.FenBao;
bp.YeZhu = b.YeZhu;
bp.SourceBreakdownId = b.BreakdownId;
bp.CheckAcceptType = b.CheckAcceptType;
BLL.BreakdownProjectService.AddBreakdownProject(bp);
}
#endregion
}
else
{
#region WBS内容
//拷贝分部及子分部
var divisions1 = from x in Funs.DB.WBS_Division where x.SuperDivisionId == null && x.CNProfessionalId == BLL.Const.CNProfessionalConstructId select x;
foreach (var d1 in divisions1)
{
Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject();
newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject));
newDivisionProject.ProjectId = this.CurrUser.LoginProjectId;
newDivisionProject.DivisionCode = d1.DivisionCode;
newDivisionProject.DivisionName = d1.DivisionName;
newDivisionProject.SortIndex = d1.SortIndex;
newDivisionProject.SuperDivisionId = d1.SuperDivisionId;
newDivisionProject.CNProfessionalId = d1.CNProfessionalId;
newDivisionProject.UnitWorkId = UnitWork.UnitWorkId;
newDivisionProject.OldDivisionId = d1.DivisionId;
BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); //分部
List<Model.WBS_Division> divisions2 = (from x in Funs.DB.WBS_Division where x.SuperDivisionId == d1.DivisionId select x).ToList();
if (divisions2.Count() > 0)
{
this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, UnitWork.UnitWorkId);
}
}
//拷贝分项
var breakdowns = from x in Funs.DB.WBS_Breakdown
join y in Funs.DB.WBS_Division on x.DivisionId equals y.DivisionId
where y.CNProfessionalId == BLL.Const.CNProfessionalConstructId
select x;
foreach (var b in breakdowns)
{
Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject();
bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject));
bp.ProjectId = this.CurrUser.LoginProjectId;
bp.BreakdownCode = b.BreakdownCode;
bp.BreakdownName = b.BreakdownName;
bp.DivisionProjectId = (from x in Funs.DB.WBS_DivisionProject where x.OldDivisionId == b.DivisionId && x.UnitWorkId == UnitWork.UnitWorkId select x.DivisionProjectId).FirstOrDefault();
bp.Basis = b.Basis;
bp.CheckPoints = b.CheckPoints;
bp.RecordAndCode = b.RecordAndCode;
bp.Class = b.Class;
bp.SortIndex = b.SortIndex;
bp.Remark = b.Remark;
bp.ModelURL = b.ModelURL;
bp.UnitWorkId = UnitWork.UnitWorkId;
bp.IsAcceptance = b.IsAcceptance;
bp.IsYellow = b.IsYellow;
bp.WuHuan = b.WuHuan;
bp.JianLi = b.JianLi;
bp.FenBao = b.FenBao;
bp.YeZhu = b.YeZhu;
bp.SourceBreakdownId = b.BreakdownId;
Model.WBS_UnitWork unitWork = new Model.WBS_UnitWork();
unitWork.UnitWorkCode = txtUnitWorkCode.Text.Trim();
unitWork.UnitWorkName = txtUnitWorkName.Text.Trim();
unitWork.ProjectId = projectId;
unitWork.SuperUnitWork = superUnitWorkId;
if (string.IsNullOrEmpty(id))
{
unitWork.UnitWorkId = SQLHelper.GetNewID(typeof(Model.WBS_UnitWork));
BLL.UnitWorkService.AddUnitWork(unitWork);
BLL.BreakdownProjectService.AddBreakdownProject(bp);
}
#endregion
}
Model.DataBase_DataTypeProject dp = Funs.DB.DataBase_DataTypeProject.FirstOrDefault(x=>x.UnitWorkId== UnitWorkId);
if (dp == null)
{
#region
Model.DataBase_DataTypeProject dataTypeProject = BLL.DataTypeProjectService.GetDataTypeProjectBySourceDataTypeId(Const.DataTypeNewConstructId, this.CurrUser.LoginProjectId);
List<Model.DataBase_DataType> childDataTypes = BLL.DataTypeService.GetDataTypesBySuperDataTypeId(Const.DataTypeNewConstructId);
if (childDataTypes.Count > 0)
{
if (dataTypeProject != null)
{
InsertDataTypeDetail(childDataTypes, dataTypeProject.DataTypeProjectId, this.CurrUser.LoginProjectId, UnitWork.UnitWorkId);
}
}
#endregion
}
BLL.LogService.AddSys_Log(this.CurrUser, unitWork.UnitWorkId, unitWork.UnitWorkId, BLL.Const.UnitWorkMenuId, "增加单位工程!");
PageContext.RegisterStartupScript(ActiveWindow.GetWriteBackValueReference(unitWork.UnitWorkId) + ActiveWindow.GetHidePostBackReference());
}
else
{
UnitWork.UnitWorkId = SQLHelper.GetNewID(typeof(Model.WBS_UnitWork));
BLL.UnitWorkService.AddUnitWork(UnitWork);
#region WBS内容
//拷贝分部及子分部
var divisions1 = from x in Funs.DB.WBS_Division where x.SuperDivisionId == null select x;
foreach (var d1 in divisions1)
{
Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject();
newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject));
newDivisionProject.ProjectId = this.CurrUser.LoginProjectId;
newDivisionProject.DivisionCode = d1.DivisionCode;
newDivisionProject.DivisionName = d1.DivisionName;
newDivisionProject.SortIndex = d1.SortIndex;
newDivisionProject.SuperDivisionId = d1.SuperDivisionId;
newDivisionProject.CNProfessionalId = d1.CNProfessionalId;
newDivisionProject.UnitWorkId = UnitWork.UnitWorkId;
newDivisionProject.OldDivisionId = d1.DivisionId;
BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); //分部
List<Model.WBS_Division> divisions2 = (from x in Funs.DB.WBS_Division where x.SuperDivisionId == d1.DivisionId select x).ToList();
if (divisions2.Count() > 0)
{
this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, UnitWork.UnitWorkId);
}
}
//拷贝分项
var breakdowns = from x in Funs.DB.WBS_Breakdown select x;
foreach (var b in breakdowns)
{
Model.WBS_BreakdownProject bp = new Model.WBS_BreakdownProject();
bp.BreakdownProjectId = SQLHelper.GetNewID(typeof(Model.WBS_BreakdownProject));
bp.ProjectId = this.CurrUser.LoginProjectId;
bp.BreakdownCode = b.BreakdownCode;
bp.BreakdownName = b.BreakdownName;
bp.DivisionProjectId = (from x in Funs.DB.WBS_DivisionProject where x.OldDivisionId == b.DivisionId && x.UnitWorkId == UnitWork.UnitWorkId select x.DivisionProjectId).FirstOrDefault();
bp.Basis = b.Basis;
bp.CheckPoints = b.CheckPoints;
bp.RecordAndCode = b.RecordAndCode;
bp.Class = b.Class;
bp.SortIndex = b.SortIndex;
bp.Remark = b.Remark;
bp.ModelURL = b.ModelURL;
bp.UnitWorkId = UnitWork.UnitWorkId;
bp.IsAcceptance = b.IsAcceptance;
bp.IsYellow = b.IsYellow;
bp.WuHuan = b.WuHuan;
bp.JianLi = b.JianLi;
bp.FenBao = b.FenBao;
bp.YeZhu = b.YeZhu;
bp.SourceBreakdownId = b.BreakdownId;
BLL.BreakdownProjectService.AddBreakdownProject(bp);
}
#endregion
#region
Model.DataBase_DataTypeProject dataTypeProject = BLL.DataTypeProjectService.GetDataTypeProjectBySourceDataTypeId(Const.DataTypeNewConstructId, this.CurrUser.LoginProjectId);
List<Model.DataBase_DataType> childDataTypes = BLL.DataTypeService.GetDataTypesBySuperDataTypeId(Const.DataTypeNewConstructId);
if (childDataTypes.Count > 0)
{
if (dataTypeProject != null)
{
InsertDataTypeDetail(childDataTypes, dataTypeProject.DataTypeProjectId, this.CurrUser.LoginProjectId, UnitWork.UnitWorkId);
}
}
#endregion
}
ShowNotify("保存成功!", MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
/// <summary>
/// 循环拷贝子级分部
/// </summary>
/// <param name="dataTypes"></param>
private void InsertDivisionDetail(List<Model.WBS_Division> divisions, string superDivisionId, string unitWorkId)
{
foreach (var d in divisions)
{
Model.WBS_DivisionProject newDivisionProject = new Model.WBS_DivisionProject();
newDivisionProject.DivisionProjectId = SQLHelper.GetNewID(typeof(Model.WBS_DivisionProject));
newDivisionProject.ProjectId = this.CurrUser.LoginProjectId;
newDivisionProject.DivisionCode = d.DivisionCode;
newDivisionProject.DivisionName = d.DivisionName;
newDivisionProject.SortIndex = d.SortIndex;
newDivisionProject.SuperDivisionId = superDivisionId;
newDivisionProject.CNProfessionalId = d.CNProfessionalId;
newDivisionProject.UnitWorkId = unitWorkId;
newDivisionProject.OldDivisionId = d.DivisionId;
newDivisionProject.SubItemType = d.SubItemType;
BLL.DivisionProjectService.AddDivisionProject(newDivisionProject); //子级分部
List<Model.WBS_Division> divisions2 = (from x in Funs.DB.WBS_Division where x.SuperDivisionId == d.DivisionId select x).ToList();
if (divisions2.Count() > 0)
{
this.InsertDivisionDetail(divisions2, newDivisionProject.DivisionProjectId, unitWorkId);
}
}
}
/// <summary>
/// 循环拷贝子级类别
/// </summary>
/// <param name="dataTypes"></param>
private void InsertDataTypeDetail(List<Model.DataBase_DataType> dataTypes, string superDataTypeId, string projectId, string unitWorkId)
{
foreach (var d in dataTypes)
{
Model.DataBase_DataTypeProject newDataTypeProject = new Model.DataBase_DataTypeProject();
newDataTypeProject.DataTypeProjectId = SQLHelper.GetNewID(typeof(Model.DataBase_DataTypeProject));
newDataTypeProject.ProjectId = projectId;
newDataTypeProject.DataTypeCode = d.DataTypeCode;
newDataTypeProject.DataTypeName = d.DataTypeName;
newDataTypeProject.SuperDataTypeId = superDataTypeId;
newDataTypeProject.SortIndex = d.SortIndex;
newDataTypeProject.Pages = d.Pages;
newDataTypeProject.Remark = d.Remark;
newDataTypeProject.IsRelatedWBS = d.IsRelatedWBS;
newDataTypeProject.SourceDataTypeId = d.DataTypeId;
newDataTypeProject.UnitWorkId = unitWorkId;
BLL.DataTypeProjectService.AddDataTypeProject(newDataTypeProject);
List<Model.DataBase_DataType> childDataTypes = BLL.DataTypeService.GetDataTypesBySuperDataTypeId(d.DataTypeId);
if (childDataTypes.Count > 0)
{
InsertDataTypeDetail(childDataTypes, newDataTypeProject.DataTypeProjectId, projectId, unitWorkId);
}
Model.WBS_UnitWork unitWork1 = BLL.UnitWorkService.getUnitWorkByUnitWorkId(id);
unitWork.UnitWorkId = id;
unitWork.ProjectId = unitWork1.ProjectId;
unitWork.SuperUnitWork = unitWork1.SuperUnitWork;
BLL.UnitWorkService.UpdateUnitWork(unitWork);
BLL.LogService.AddSys_Log(this.CurrUser, unitWork.UnitWorkId, unitWork.UnitWorkId, BLL.Const.UnitWorkMenuId, "修改单位工程!");
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
}
}

View File

@ -57,42 +57,6 @@ namespace FineUIPro.Web.ProjectData {
/// </remarks>
protected global::FineUIPro.TextBox txtUnitWorkName;
/// <summary>
/// txtCosts 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.NumberBox txtCosts;
/// <summary>
/// drpUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUnit;
/// <summary>
/// drpSupervisorUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpSupervisorUnit;
/// <summary>
/// drpNDEUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpNDEUnit;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -102,15 +66,6 @@ namespace FineUIPro.Web.ProjectData {
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// hdCheckerId 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdCheckerId;
/// <summary>
/// btnSave 控件。
/// </summary>
@ -119,14 +74,5 @@ namespace FineUIPro.Web.ProjectData {
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
}
}

View File

@ -10,7 +10,7 @@
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1" AjaxAspnetControls="divAccidentUnit,divAccidentTime" />
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1" AjaxAspnetControls="divAccidentUnit,divAccidentTime,divAccidentTime1" />
<f:Panel ID="Panel3" CssClass="blockpanel" runat="server" EnableCollapse="false"
BodyPadding="10px" ShowBorder="true" ShowHeader="false">
<Items>
@ -30,7 +30,7 @@
OnSelectedIndexChanged="drpChartType_SelectedIndexChanged" Width="300px" LabelWidth="80px">
<f:ListItem Value="Line" Text="折线图"></f:ListItem>
<f:ListItem Value="Column" Text="柱形图"></f:ListItem>
<%-- <f:ListItem Value="Pie" Text="饼形图"></f:ListItem>
<%-- <f:ListItem Value="Pie" Text="饼形图"></f:ListItem>
<f:ListItem Value="StackedArea" Text="堆积面积图"></f:ListItem>
<f:ListItem Value="Spline" Text="样条图"></f:ListItem>
<f:ListItem Value="SplineArea" Text="样条面积图"></f:ListItem>
@ -52,7 +52,7 @@
<f:TabStrip ID="TabStrip1" CssClass="f-tabstrip-theme-simple" Height="600px" ShowBorder="true"
TabPosition="Top" MarginBottom="5px" EnableTabCloseMenu="false" runat="server">
<Tabs>
<f:Tab ID="Tab2" Title="图形" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server"
<f:Tab ID="Tab1" Title="图形" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server"
TitleToolTip="图形">
<Items>
<f:ContentPanel ShowHeader="false" runat="server" ID="cpAccidentTime" Margin="0 0 0 0">
@ -62,6 +62,15 @@
</f:ContentPanel>
</Items>
</f:Tab>
<f:Tab ID="Tab2" Title="百分比" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server" TitleToolTip="百分比">
<Items>
<f:ContentPanel ShowHeader="false" runat="server" ID="ContentPanel1" Margin="0 0 0 0">
<div id="divAccidentTime1">
<uc1:ChartControl ID="ChartAccidentTime1" runat="server" />
</div>
</f:ContentPanel>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>

View File

@ -58,11 +58,34 @@ namespace FineUIPro.Web.Transfer.Chart
rowTime["日期"] = QueryTime.ToString("yyyy/MM/dd");
DateTime startTime = Convert.ToDateTime(QueryTime.ToString("yyyy-MM-dd") + " 00:00:00");
DateTime endTime = Convert.ToDateTime(QueryTime.ToString("yyyy-MM-dd") + " 23:59:59");
rowTime["计划完成数量"] = forms.Where(x => x.Required_Date >= startTime && x.Required_Date <= endTime).Count();
rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date >= startTime && x.Actual_Date <= endTime).Count();
//rowTime["计划完成数量"] = forms.Where(x => x.Required_Date >= startTime && x.Required_Date <= endTime).Count();
//rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date >= startTime && x.Actual_Date <= endTime).Count();
rowTime["计划完成数量"] = forms.Where(x => x.Required_Date <= endTime).Count();
rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date <= endTime).Count();
dtTime.Rows.Add(rowTime);
}
this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "尾项完成统计分析", this.drpChartType.SelectedValue, 1300, 550, false));
///按单位统计
DataTable dtTime1 = new DataTable();
dtTime1.Columns.Add("日期", typeof(string));
dtTime1.Columns.Add("计划完成百分比(%)", typeof(string));
dtTime1.Columns.Add("实际完成百分比(%)", typeof(string));
for (int i = 6; i >= 0; i--)
{
DataRow rowTime = dtTime1.NewRow();
DateTime QueryTime = DateTime.Now.AddDays(i * -1);
rowTime["日期"] = QueryTime.ToString("yyyy/MM/dd");
DateTime startTime = Convert.ToDateTime(QueryTime.ToString("yyyy-MM-dd") + " 00:00:00");
DateTime endTime = Convert.ToDateTime(QueryTime.ToString("yyyy-MM-dd") + " 23:59:59");
double jhCount = forms.Where(x => x.Required_Date <= endTime).Count();
double sjCount = forms.Where(x => x.Actual_Date <= endTime).Count();
double allCount = forms.Count();
rowTime["计划完成百分比(%)"] = allCount == 0 ? "0.00" : (jhCount / allCount * 100).ToString("0.00");
rowTime["实际完成百分比(%)"] = allCount == 0 ? "0.00" : (sjCount / allCount * 100).ToString("0.00");
dtTime1.Rows.Add(rowTime);
}
this.ChartAccidentTime1.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime1, "尾项完成统计分析", this.drpChartType.SelectedValue, 1300, 550, false));
}
#endregion
@ -81,11 +104,34 @@ namespace FineUIPro.Web.Transfer.Chart
rowTime["月份"] = QueryTime.ToString("yyyy/MM");
DateTime startTime = QueryTime;
DateTime endTime = Convert.ToDateTime(QueryTime.AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd") + " 23:59:59");
rowTime["计划完成数量"] = forms.Where(x => x.Required_Date >= startTime && x.Required_Date <= endTime).Count();
rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date >= startTime && x.Actual_Date <= endTime).Count();
//rowTime["计划完成数量"] = forms.Where(x => x.Required_Date >= startTime && x.Required_Date <= endTime).Count();
//rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date >= startTime && x.Actual_Date <= endTime).Count();
rowTime["计划完成数量"] = forms.Where(x => x.Required_Date <= endTime).Count();
rowTime["实际完成数量"] = forms.Where(x => x.Actual_Date <= endTime).Count();
dtTime.Rows.Add(rowTime);
}
this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime, "尾项完成统计分析", this.drpChartType.SelectedValue, 1300, 550, false));
///按单位统计
DataTable dtTime1 = new DataTable();
dtTime1.Columns.Add("月份", typeof(string));
dtTime1.Columns.Add("计划完成百分比(%)", typeof(string));
dtTime1.Columns.Add("实际完成百分比(%)", typeof(string));
for (int i = 1; i <= DateTime.Now.Month; i++)
{
DataRow rowTime = dtTime1.NewRow();
DateTime QueryTime = Convert.ToDateTime($"{DateTime.Now.Year.ToString()}-{i}-1 00:00:00");
rowTime["月份"] = QueryTime.ToString("yyyy/MM");
DateTime startTime = QueryTime;
DateTime endTime = Convert.ToDateTime(QueryTime.AddMonths(1).AddDays(-1).ToString("yyyy-MM-dd") + " 23:59:59");
double jhCount = forms.Where(x => x.Required_Date <= endTime).Count();
double sjCount = forms.Where(x => x.Actual_Date <= endTime).Count();
double allCount = forms.Count();
rowTime["计划完成百分比(%)"] = allCount == 0 ? "0.00" : (jhCount / allCount * 100).ToString("0.00");
rowTime["实际完成百分比(%)"] = allCount == 0 ? "0.00" : (sjCount / allCount * 100).ToString("0.00");
dtTime1.Rows.Add(rowTime);
}
this.ChartAccidentTime1.CreateChart(BLL.ChartControlService.GetDataSourceChart(dtTime1, "尾项完成统计分析", this.drpChartType.SelectedValue, 1300, 550, false));
}
}

View File

@ -105,13 +105,13 @@ namespace FineUIPro.Web.Transfer.Chart
protected global::FineUIPro.TabStrip TabStrip1;
/// <summary>
/// Tab2 控件。
/// Tab1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tab Tab2;
protected global::FineUIPro.Tab Tab1;
/// <summary>
/// cpAccidentTime 控件。
@ -130,5 +130,32 @@ namespace FineUIPro.Web.Transfer.Chart
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::Web.Controls.ChartControl ChartAccidentTime;
/// <summary>
/// Tab2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Tab Tab2;
/// <summary>
/// ContentPanel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel ContentPanel1;
/// <summary>
/// ChartAccidentTime1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::Web.Controls.ChartControl ChartAccidentTime1;
}
}

View File

@ -88,6 +88,7 @@
EnableRowDoubleClickEvent="true" EnableTextSelection="true" EnableSummary="true" SummaryPosition="Flow">
<Columns>
<f:BoundField DataField="Action_By" ColumnID="Action_By" HeaderText="单位" ExpandUnusedSpace="true" MinWidth="150px" />
<f:RenderField Width="150px" ColumnID="Cat_All_Count" DataField="Cat_All_Count" HeaderText="汇总" TextAlign="Center" FieldType="Double" />
<f:GroupField HeaderText="类别" TextAlign="Center" MinWidth="600px">
<Columns>
<f:RenderField Width="150px" ColumnID="Cat_A_Count" DataField="Cat_A_Count" HeaderText="A" TextAlign="Center" FieldType="Double" />

View File

@ -196,12 +196,13 @@ namespace FineUIPro.Web.Transfer.Chart
strSql.AppendLine(" AND System_No=@System_No ");
listStr.Add(new SqlParameter("@System_No", _systemNo));
}
strSql.AppendLine(" select Action_By,cast(0 as decimal(18,2)) Cat_A_Count,cast(0 as decimal(18,2)) Cat_B_Count,cast(0 as decimal(18,2)) Cat_C_Count,cast(0 as decimal(18,2)) Cat_D_Count INTO #PunchlistFromSortTemp2 from #AllPunchlistFromSortTemp2 Group by Action_By; ");
strSql.AppendLine(" select Action_By,cast(0 as decimal(18,2)) Cat_All_Count,cast(0 as decimal(18,2)) Cat_A_Count,cast(0 as decimal(18,2)) Cat_B_Count,cast(0 as decimal(18,2)) Cat_C_Count,cast(0 as decimal(18,2)) Cat_D_Count INTO #PunchlistFromSortTemp2 from #AllPunchlistFromSortTemp2 Group by Action_By; ");
strSql.AppendLine(" update a set a.Cat_A_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='A' or isnull(b.Cat,'')='a')) ");
strSql.AppendLine(",a.Cat_B_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='B' or isnull(b.Cat,'')='b')) ");
strSql.AppendLine(",a.Cat_C_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='C' or isnull(b.Cat,'')='c')) ");
strSql.AppendLine(",a.Cat_D_Count=(select count(1) from #AllPunchlistFromSortTemp2 b where a.Action_By=b.Action_By AND (isnull(b.Cat,'')='D' or isnull(b.Cat,'')='d')) ");
strSql.AppendLine("from #PunchlistFromSortTemp2 a;");
strSql.AppendLine(" update #PunchlistFromSortTemp2 set Cat_All_Count=Cat_A_Count+Cat_B_Count+Cat_C_Count+Cat_D_Count; ");
strSql.AppendLine("select * from #PunchlistFromSortTemp2 ");
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
strSql.AppendLine(" order by Action_By ");
@ -217,8 +218,10 @@ namespace FineUIPro.Web.Transfer.Chart
int cat_B_Count = 0;
int cat_C_Count = 0;
int cat_D_Count = 0;
int cat_All_Count = 0;
foreach (DataRow row in tb.Rows)
{
cat_All_Count += Convert.ToInt32(row["Cat_All_Count"]);
cat_A_Count += Convert.ToInt32(row["Cat_A_Count"]);
cat_B_Count += Convert.ToInt32(row["Cat_B_Count"]);
cat_C_Count += Convert.ToInt32(row["Cat_C_Count"]);
@ -228,6 +231,7 @@ namespace FineUIPro.Web.Transfer.Chart
JObject summary = new JObject();
summary.Add("Action_By", "合计");
summary.Add("Cat_All_Count", cat_All_Count.ToString());
summary.Add("Cat_A_Count", cat_A_Count.ToString());
summary.Add("Cat_B_Count", cat_B_Count.ToString());
summary.Add("Cat_C_Count", cat_C_Count.ToString());

View File

@ -0,0 +1,16 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SystemStatusSummary.aspx.cs" Inherits="FineUIPro.Web.Transfer.Chart.SystemStatusSummary" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>移交状态汇总表</title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>

View File

@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.Transfer.Chart
{
public partial class SystemStatusSummary : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}

View File

@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Transfer.Chart
{
public partial class SystemStatusSummary
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
}
}

View File

@ -0,0 +1,16 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Systemstatus.aspx.cs" Inherits="FineUIPro.Web.Transfer.Chart.Systemstatus" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>移交统计表</title>
</head>
<body>
<form id="form1" runat="server">
<div>
</div>
</form>
</body>
</html>

View File

@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.Transfer.Chart
{
public partial class Systemstatus : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
}
}

View File

@ -0,0 +1,26 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Transfer.Chart
{
public partial class Systemstatus
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
}
}

View File

@ -0,0 +1,246 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SystemstatusChart.aspx.cs" Inherits="FineUIPro.Web.Transfer.Chart.SystemstatusChart" %>
<%@ Register Src="~/Controls/ChartControl.ascx" TagName="ChartControl" TagPrefix="uc1" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>移交统计图表</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="RegionPanel1" AjaxAspnetControls="divAccidentUnit,divAccidentTime" />
<f:Panel ID="Panel3" CssClass="blockpanel" runat="server" EnableCollapse="false"
BodyPadding="10px" ShowBorder="true" ShowHeader="false" Hidden="true">
<Items>
<f:Form ID="Form2" ShowHeader="false" ShowBorder="false" runat="server" >
<Rows>
<f:FormRow ColumnWidths="25% 30% 35% 10%">
<Items>
<f:DropDownList ID="ddlSystemNo" runat="server" Label="System No" AutoPostBack="true" EnableEdit="true"
OnSelectedIndexChanged="ddlSystemNo_SelectedIndexChanged" Width="300px" LabelWidth="100px">
</f:DropDownList>
<%-- <f:Button ID="BtnAnalyse" Text="统计" Icon="ChartPie" runat="server" OnClick="BtnAnalyse_Click">
</f:Button>--%>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:Panel>
<div id='two' style="width: 100%; height: 500px;"></div>
<%-- <f:Panel ID="Panel4" CssClass="blockpanel" runat="server" EnableCollapse="false"
BodyPadding="10px" ShowBorder="true" ShowHeader="false" Hidden="true">
<Items>
<f:TabStrip ID="TabStrip1" CssClass="f-tabstrip-theme-simple" Height="600px" ShowBorder="true"
TabPosition="Top" MarginBottom="5px" EnableTabCloseMenu="false" runat="server">
<Tabs>
<f:Tab ID="Tab2" Title="图形" BodyPadding="5px" Layout="Fit" IconFont="Bookmark" runat="server"
TitleToolTip="图形">
<Items>
<f:ContentPanel ShowHeader="false" runat="server" ID="cpAccidentTime" Margin="0 0 0 0" Hidden="true">
<div id="divAccidentTime">
<uc1:ChartControl ID="ChartAccidentTime" runat="server" />
</div>
</f:ContentPanel>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>
</f:Panel>--%>
</form>
</body>
</html>
<script type="text/javascript" src="../../res/index/js/swiper-3.4.2.jquery.min.js"></script>
<script type="text/javascript" src="../../res/index/js/echarts.min.js"></script>
<script type="text/javascript">
function category_Two(id, xArr, data, num) {
// 基于准备好的dom初始化echarts实例
var myChart = echarts.init(document.getElementById(id))
// 指定图表的配置项和数据
var option = {
title: {
// left:'center',
text: '移交统计图表',
textStyle: {
color: '#000',
fontWeight: 'normal',
fontSize: 12
},
show: true
},
tooltip: {},
legend: {
left: '15%',
show: true,
textStyle: {//图例文字的样式
color: '#000',
fontSize: 10,
}
},
xAxis: {
axisTick: {
show: false
},
axisLine: {
lineStyle: {
color: '#000',
}
},
axisLabel: {
margin: 20,
show: true,
textStyle: {
color: '#000'
},
interval: 0,
formatter: function (value) {
var ret = "";//拼接加\n返回的类目项
var maxLength = num;//每项显示文字个数
var valLength = value.length;//X轴类目项的文字个数
var rowN = Math.ceil(valLength / maxLength); //类目项需要换行的行数
if (rowN > 1)//如果类目项的文字大于maxLength,
{
for (var i = 0; i < rowN; i++) {
var temp = "";//每次截取的字符串
var start = i * maxLength;//开始截取的位置
var end = start + maxLength;//结束截取的位置
//这里也可以加一个是否是最后一行的判断,但是不加也没有影响,那就不加吧
//temp = value.substring(start, end) + "\n";
temp = value.substring(start, end) + (i == rowN - 1 ? "" : "\n");
ret += temp; //凭借最终的字符串
}
return ret;
}
else {
return value;
}
}
},
type: 'category',
data: xArr,
boundaryGap: [0, 0.01],
},
yAxis: {
axisTick: {
show: false
},
axisLine: {
show: false,
lineStyle: {
color: '#000'
}
},
axisLabel: {
show: true,
textStyle: {
color: '#000'
}
},
},
series: data,
grid: {
top: '20%',
left: '0%',
right: '0%',
bottom: '0%',
containLabel: true,
backgroundColor: 'rgba(0,162,233, 0.01)',
// borderColor: 'rgba(0,162,233, 1)'
},
backgroundColor: 'rgba(0,162,233, 0.01)',
textStyle: {
color: 'rgba(255, 255, 255, 0.3)'
}
}
option.dataZoom = [//给x轴设置滚动条
{
start: 0,//默认为0
type: 'slider',
show: true,
startValue: 0,
endValue: 9,
height: 6,
bottom: '6%',
zoomLock: true,
moveOnMouseWheel: true,
brushSelect: true,
showDetail: false,
borderColor: "rgba(43,48,67,0.8)",
fillerColor: '#269cdb',//滑动块的颜色
backgroundColor: '#33384b',//两边未选中的滑动条区域的颜色
}]
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option)
}
var xArr = [<%=AllSystemNo%>]
//var xArr = two2.categories
var data = [
{
name: '完成数量',
type: 'bar',
stack: '总量',
barWidth: 40,
data: [<%=completed%>],
//data: two2.series[0].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['40%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#000'
},
formatter: '{c}',
},
itemStyle: { normal: { color: '#84CF75' } }
},
{
name: '进行中数量',
type: 'bar',
stack: '总量',
barWidth: 40,
data: [<%=Inprogress%>],
//data: two2.series[1].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['40%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#000'
},
formatter: '{c}',
},
itemStyle: { normal: { color: '#3282F6' } }
},
{
name: '未完成数量',
type: 'bar',
stack: '总量',
barWidth: 40,
data: [<%=NotStart%>],
//data: two2.series[1].data,
label: { //柱体上显示数值
show: true,//开启显示
position: ['40%', '50%'],//在上方显示
textStyle: {//数值样式
fontSize: '20px',
color: '#000'
},
formatter: '{c}',
},
itemStyle: { normal: { color: '#EB3324' } }
}
]
category_Two('two', xArr, data, 20)
</script>

View File

@ -0,0 +1,124 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web.Services.Description;
using BLL;
using NPOI.SS.Formula.Functions;
namespace FineUIPro.Web.Transfer.Chart
{
public partial class SystemstatusChart : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack) {
var systemCode = Funs.DB.Transfer_LHCSystemList
.Where(x => x.ProjectId == CurrUser.LoginProjectId)
.GroupBy(p => new { p.SystemNo })
.Select(p => new { SystemNo = p.Key.SystemNo }).ToList();
int indexRow = 1;
ddlSystemNo.Items.Insert(0, new FineUIPro.ListItem("ALL", ""));
foreach (var t in systemCode)
{
ddlSystemNo.Items.Insert(indexRow, new FineUIPro.ListItem(t.SystemNo, t.SystemNo));
indexRow++;
}
AnalyseData();
}
}
public string AllSystemNo;
public string completed;
public string Inprogress;
public string NotStart;
public void AnalyseData() {
var pid = CurrUser.LoginProjectId;
#region
var systemCode = Funs.DB.Transfer_LHCSystemList
.Where(x => x.ProjectId == CurrUser.LoginProjectId)
.GroupBy(p => new { p.SystemNo })
.Select(p => new { SystemNo = p.Key.SystemNo }).ToList();
if (!string.IsNullOrEmpty(ddlSystemNo.SelectedValue))
{
systemCode= Funs.DB.Transfer_LHCSystemList
.Where(x => x.ProjectId == CurrUser.LoginProjectId && x.SystemNo == ddlSystemNo.SelectedValue)
.GroupBy(p => new { p.SystemNo })
.Select(p => new { SystemNo = p.Key.SystemNo }).ToList();
}
#region
var list1 = Funs.DB.Transfer_Piping.Where(x => x.ProjectId == pid).ToList();
var list2= Funs.DB.Transfer_StaticEquipment.Where(x => x.ProjectId == pid).ToList();
var list3= Funs.DB.Transfer_RotatingEquipment.Where(x => x.ProjectId == pid).ToList();
var list4 = Funs.DB.Transfer_Instrumentation.Where(x => x.ProjectId == pid).ToList();
var list5 = Funs.DB.Transfer_Electrical.Where(x => x.ProjectId == pid).ToList();
var list6 = Funs.DB.Transfer_Civil_Structure.Where(x => x.ProjectId == pid).ToList();
var list7 = Funs.DB.Transfer_Firefighting.Where(x => x.ProjectId == pid).ToList();
var list8 = Funs.DB.Transfer_Telecom.Where(x => x.ProjectId == pid).ToList();
var list9 = Funs.DB.Transfer_PunchlistFrom.Where(x => x.ProjectId == pid).ToList();
#endregion
DataTable dt = new DataTable();
dt.Columns.Add("系统编号", typeof(string));
dt.Columns.Add("完成数量", typeof(string));
dt.Columns.Add("进行中数量", typeof(string));
dt.Columns.Add("未完成数量", typeof(string));
foreach (var t in systemCode) {
var scode = t.SystemNo;
AllSystemNo += "'" + scode + "',";
DataRow dr = dt.NewRow();
dr["系统编号"] = scode;
#region
var completedCount = list1.Where(x => x.SYSTEM == scode && x.FINALStatus == "Completed").ToList().Count()
+ list2.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "Completed").ToList().Count()
+ list3.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "Completed").ToList().Count()
+ list4.Where(x => x.SystemName == scode && x.FINAL_Status == "Completed").ToList().Count()
+ list5.Where(x => x.SystemName == scode && x.FINAL_Status == "Completed").ToList().Count()
+ list6.Where(x => x.SystemName == scode && x.FINAL_Status == "Completed").ToList().Count()
+ list7.Where(x => x.SystemName == scode && x.FINAL_Status == "Completed").ToList().Count()
+ list8.Where(x => x.SystemName == scode && x.FINAL_Status == "Completed").ToList().Count()
+ list9.Where(x => x.SystemName == scode && x.Status == "Completed").ToList().Count();
#endregion
dr["完成数量"] = completedCount;
completed+= "'" + completedCount.ToString() + "',";
#region
var InprogressCount = list1.Where(x => x.SYSTEM == scode && x.FINALStatus == "In progress").ToList().Count()
+ list2.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "In progress").ToList().Count()
+ list3.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "In progress").ToList().Count()
+ list4.Where(x => x.SystemName == scode && x.FINAL_Status == "In progress").ToList().Count()
+ list5.Where(x => x.SystemName == scode && x.FINAL_Status == "In progress").ToList().Count()
+ list6.Where(x => x.SystemName == scode && x.FINAL_Status == "In progress").ToList().Count()
+ list7.Where(x => x.SystemName == scode && x.FINAL_Status == "In progress").ToList().Count()
+ list8.Where(x => x.SystemName == scode && x.FINAL_Status == "In progress").ToList().Count()
+ list9.Where(x => x.SystemName == scode && x.Status == "In progress").ToList().Count();
#endregion
dr["进行中数量"] = InprogressCount;
Inprogress += "'" + InprogressCount.ToString() + "',";
#region
var NotStartCount = list1.Where(x => x.SYSTEM == scode && x.FINALStatus == "Not Start").ToList().Count()
+ list2.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "Not Start").ToList().Count()
+ list3.Where(x => x.SYSTEM == scode && x.MechanicalFINALStatus == "Not Start").ToList().Count()
+ list4.Where(x => x.SystemName == scode && x.FINAL_Status == "Not Start").ToList().Count()
+ list5.Where(x => x.SystemName == scode && x.FINAL_Status == "Not Start").ToList().Count()
+ list6.Where(x => x.SystemName == scode && x.FINAL_Status == "Not Start").ToList().Count()
+ list7.Where(x => x.SystemName == scode && x.FINAL_Status == "Not Start").ToList().Count()
+ list8.Where(x => x.SystemName == scode && x.FINAL_Status == "Not Start").ToList().Count()
+ list9.Where(x => x.SystemName == scode && x.Status == "Not Start").ToList().Count();
#endregion
dr["未完成数量"] = NotStartCount;
NotStart += "'" + NotStartCount.ToString() + "',";
dt.Rows.Add(dr);
}
//this.ChartAccidentTime.CreateChart(BLL.ChartControlService.GetDataSourceChart(dt, "移交状态统计", "Column", 1300, 550, false));
#endregion
}
protected void ddlSystemNo_SelectedIndexChanged(object sender, EventArgs e)
{
this.AnalyseData();
}
}
}

View File

@ -0,0 +1,62 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Transfer.Chart
{
public partial class SystemstatusChart
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel3;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// ddlSystemNo 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlSystemNo;
}
}

View File

@ -56,50 +56,50 @@
<f:GroupField HeaderText="Civil Structure" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="Civil_Structure" DataField="Civil_Structure" HeaderText="Structure/Civil/Architecture" />
<f:BoundField minWidth="200px" TextAlign="Center" ColumnID="Civil_Structure" DataField="Civil_Structure" HeaderText="Structure/Civil/Architecture" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="SYSTEM" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField minWidth="140px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center">
<Columns>
<f:RenderField ColumnID="Foundation" DataField="Foundation" FieldType="String" HeaderText="Foundation" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Mainstructure" DataField="Mainstructure" FieldType="String" HeaderText="Main structure<br/> acceptance" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="Buildingdecoration" DataField="Buildingdecoration" FieldType="String" HeaderText="Building<br/> decoration" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="Equipment" DataField="Equipment" FieldType="String" HeaderText="Equipment" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Instrument" DataField="Instrument" FieldType="String" HeaderText="Instrument" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Electrical" DataField="Electrical" FieldType="String" HeaderText="Electrical" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="FireFighting" DataField="FireFighting" FieldType="String" HeaderText="Fire<br/> Fighting" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="HVAC" DataField="HVAC" FieldType="String" HeaderText="HVAC" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="100px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -57,34 +57,34 @@
<f:GroupField HeaderText="ELECTRICAL" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="ELECTRICAL" DataField="ELECTRICAL" HeaderText="Tag. No" />
<f:BoundField minWidth="140px" TextAlign="Center" ColumnID="ELECTRICAL" DataField="ELECTRICAL" HeaderText="Tag. No" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="System" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Sub-System" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Turn over Package" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Sub-System" TextAlign="Center"/>
<f:BoundField minWidth="140px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Turn over Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center" MinWidth="400px">
<Columns>
<f:RenderField ColumnID="Installation" DataField="Installation" FieldType="String" HeaderText="Installation<br/> &Inspection Reocrd" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="150px">
</f:RenderField>
<f:RenderField ColumnID="Communicationtest" DataField="Communicationtest" FieldType="String" HeaderText="Communication<br/> test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="CableLaying" DataField="CableLaying" FieldType="String" HeaderText="Cable Laying and<br/> Insulation Test<br/> Record" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="LoopTest" DataField="LoopTest" FieldType="String" HeaderText="Loop Test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -57,30 +57,30 @@
<f:GroupField HeaderText="FF" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="Firefighting" DataField="Firefighting" HeaderText="Firefighting" />
<f:BoundField minWidth="140px" TextAlign="Center" ColumnID="Firefighting" DataField="Firefighting" HeaderText="Firefighting" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="SYSTEM" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
<f:BoundField minWidth="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField minWidth="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center" MinWidth="400px">
<Columns>
<f:RenderField ColumnID="Installation" DataField="Installation" FieldType="String" HeaderText="Installation" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Debugging" DataField="Debugging" FieldType="String" HeaderText="Debugging" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Acceptancecheck" DataField="Acceptancecheck" FieldType="String" HeaderText="Acceptance check" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -57,38 +57,38 @@
<f:GroupField HeaderText="INSTRUMENTATION" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="INSTRUMENTATION" DataField="INSTRUMENTATION" HeaderText="Tag No" />
<f:BoundField minWidth="160px" TextAlign="Center" ColumnID="INSTRUMENTATION" DataField="INSTRUMENTATION" HeaderText="Tag No" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="System" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Sub-System" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Turn over Package" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Sub-System" TextAlign="Center"/>
<f:BoundField minWidth="140px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Turn over Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center" MinWidth="400px">
<Columns>
<f:RenderField ColumnID="InstallationCalibration" DataField="InstallationCalibration" FieldType="String" HeaderText="Installation<br/> &Calibration " TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="PipingPressuretest" DataField="PipingPressuretest" FieldType="String" HeaderText="Piping Pressure test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="150px">
</f:RenderField>
<f:RenderField ColumnID="PipingLeak" DataField="PipingLeak" FieldType="String" HeaderText="Piping Leak/<br/>Vacuum Test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="PipingBlowing" DataField="PipingBlowing" FieldType="String" HeaderText="Piping Blowing" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="Looptest" DataField="Looptest" FieldType="String" HeaderText="Loop test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -49,11 +49,17 @@
HeaderTextAlign="Center" MinWidth="50px">
</f:RenderField>
<f:RenderField ColumnID="SystemNo" DataField="SystemNo"
FieldType="String" HeaderText="SystemNo" TextAlign="Center"
HeaderTextAlign="Center" MinWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="Commissioningsystemcode" DataField="Commissioningsystemcode"
FieldType="String" HeaderText="Commissioning<br/> system code" TextAlign="Center"
HeaderTextAlign="Center" MinWidth="180px">
</f:RenderField>
<f:RenderField ColumnID="CommissioningCodeDescription" DataField="CommissioningCodeDescription"
FieldType="String" HeaderText="Commissioning Code<br/> Description" TextAlign="Center"
HeaderTextAlign="Center" MinWidth="180px">
@ -65,15 +71,10 @@
</f:RenderField>
<f:RenderField ColumnID="SubCommissioningsystem" DataField="SubCommissioningsystem"
FieldType="String" HeaderText="Sub-Commissioning<br/> system" TextAlign="Center"
FieldType="String" HeaderText="Sub-system No" TextAlign="Center"
HeaderTextAlign="Center" MinWidth="180px">
</f:RenderField>
<f:RenderField ColumnID="Turnover_Code" DataField="Turnover_Code"
FieldType="String" HeaderText="Turnover Code" TextAlign="Center"
HeaderTextAlign="Center" MinWidth="150px">
</f:RenderField>
<f:RenderField ColumnID="PlanStartofTestingDate" DataField="PlanStartofTestingDate" FieldType="Date" Renderer="Date"
RendererArgument="yyyy-MM-dd"
HeaderText="Plan Start of Testing Date" TextAlign="Center" HeaderTextAlign="Center" MinWidth="180px">
@ -81,7 +82,7 @@
<f:RenderField ColumnID="PlanFinishofTestingDate" DataField="PlanFinishofTestingDate" FieldType="Date" Renderer="Date"
RendererArgument="yyyy-MM-dd"
HeaderText="Plan Finish of Testing Date" TextAlign="Center" HeaderTextAlign="Center" MinWidth="180px">
HeaderText="Plan Finish of Testing Date" TextAlign="Center" HeaderTextAlign="Center" MinWidth="200px">
</f:RenderField>
<f:RenderField ColumnID="Status" DataField="Status"
@ -97,6 +98,7 @@
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
<f:Listener Event="dataload" Handler="onGridDataLoad" />
</Listeners>
<PageItems>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
@ -140,6 +142,10 @@
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function onGridDataLoad(event) {
this.mergeColumns(['SystemNo', 'Commissioningsystemcode', 'CommissioningCodeDescription']);
}
</script>
</body>
</html>

View File

@ -116,7 +116,7 @@ namespace FineUIPro.Web.Transfer
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
oleDBConnString += ";Extended Properties='Excel 8.0;IMEX=1; 8.0;HDR=1;'";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
@ -420,11 +420,11 @@ namespace FineUIPro.Web.Transfer
oleDBConn.Dispose();
if (Type == "0")
{
AddDatasetToSQL2(ds.Tables[0], 8);
AddDatasetToSQL2(ds.Tables[0], 9);
}
else
{
AddDatasetToSQL2(ds.Tables[0], 9);
AddDatasetToSQL2(ds.Tables[0], 10);
}
}
@ -472,7 +472,7 @@ namespace FineUIPro.Web.Transfer
//根据项目id查询sn
var snModel = Funs.DB.Transfer_LHCSystemList.Where(x => x.ProjectId == CurrUser.LoginProjectId
&& x.Type == Type).OrderByDescending(x => x.SN).FirstOrDefault();
if (snModel == null && Sn!=1001)
if (snModel == null && Sn==0)
{
Sn = 1001;
model.SN = Sn;
@ -490,13 +490,15 @@ namespace FineUIPro.Web.Transfer
}
}
model.SystemNo = pds.Rows[i][0].ToString().Trim();
model.Commissioningsystemcode= pds.Rows[i][0].ToString().Trim();
model.CommissioningCodeDescription = pds.Rows[i][1].ToString().Trim();
model.Commissioningsystemcode= pds.Rows[i][1].ToString().Trim();
model.CommissioningCodeDescription = pds.Rows[i][2].ToString().Trim();
if (Type == "0")
{
model.SubCommissioningsystem = pds.Rows[i][2].ToString().Trim();
model.Turnover_Code= pds.Rows[i][3].ToString().Trim();
model.SubCommissioningsystem = pds.Rows[i][3].ToString().Trim();
//model.Turnover_Code= pds.Rows[i][4].ToString().Trim();
DateTime t1, t2,t3;
if (DateTime.TryParse(pds.Rows[i][4].ToString(), out t1) && !string.IsNullOrEmpty(pds.Rows[i][4].ToString()))
model.PlanStartofTestingDate = t1;
@ -508,9 +510,9 @@ namespace FineUIPro.Web.Transfer
}
else {
model.Describe = pds.Rows[i][2].ToString().Trim();
model.SubCommissioningsystem = pds.Rows[i][3].ToString().Trim();
model.Turnover_Code = pds.Rows[i][4].ToString().Trim();
model.Describe = pds.Rows[i][3].ToString().Trim();
model.SubCommissioningsystem = pds.Rows[i][4].ToString().Trim();
//model.Turnover_Code = pds.Rows[i][5].ToString().Trim();
DateTime t1, t2, t3;
if (DateTime.TryParse(pds.Rows[i][5].ToString(), out t1) && !string.IsNullOrEmpty(pds.Rows[i][4].ToString()))
model.PlanStartofTestingDate = t1;

View File

@ -52,7 +52,7 @@
</f:GroupField>
<f:GroupField ID="g2" HeaderText="SYSTEM AND TEST PACKAGE SELECTION" HeaderTextAlign="Center">
<Columns>
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="SYSTEM No" TextAlign="Center"
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="System No" TextAlign="Center"
HeaderTextAlign="Center" Width="120px">
</f:RenderField>
<f:RenderField ColumnID="Subsystem" DataField="Subsystem" FieldType="String" HeaderText="Sub-System" TextAlign="Center"

View File

@ -49,30 +49,30 @@
<f:GroupField HeaderText="Plumbing" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="Plumbing" DataField="Plumbing" HeaderText="Plumbing" />
<f:BoundField minWidth="120px" TextAlign="Center" ColumnID="Plumbing" DataField="Plumbing" HeaderText="Plumbing" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="SYSTEM" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField minWidth="140px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center" MinWidth="400px">
<Columns>
<f:RenderField ColumnID="Ndt" DataField="Ndt" FieldType="String" HeaderText="NDT" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="100px">
</f:RenderField>
<f:RenderField ColumnID="Flushing" DataField="Flushing" FieldType="String" HeaderText="Flushing" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
<f:RenderField ColumnID="RunningTest" DataField="RunningTest" FieldType="String" HeaderText="Running Test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="120px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -21,9 +21,16 @@
<Toolbars>
<f:Toolbar ID="ToolSearch" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:TextBox runat="server" ID="txtNum_NO" Label="No." LabelWidth="40px" LabelAlign="Right" Width="120px"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem_No" Label="System No" LabelWidth="100px" LabelAlign="Right" Width="180px"></f:TextBox>
<f:TextBox runat="server" ID="txtSub_Sys_No" Label="Sub Sys No" LabelWidth="100px" LabelAlign="Right" Width="180px"></f:TextBox>
<f:DropDownList ID="ddlCat" runat="server" Label="Cat." AutoPostBack="true" Width="80px" LabelWidth="40px">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="A" Text="A"></f:ListItem>
<f:ListItem Value="B" Text="B"></f:ListItem>
<f:ListItem Value="C" Text="C"></f:ListItem>
<f:ListItem Value="D" Text="D"></f:ListItem>
</f:DropDownList>
<f:TextBox runat="server" ID="txtRaised_By" Label="Raised By" LabelWidth="90px" LabelAlign="Right" Width="150px"></f:TextBox>
<f:TextBox runat="server" ID="txtDisc" Label="Disc" LabelWidth="40px" LabelAlign="Right" Width="120px"></f:TextBox>
<f:DropDownList ID="ddlEng" runat="server" Label="Eng" AutoPostBack="true" Width="80px" LabelWidth="40px">
<f:ListItem Value="" Text=""></f:ListItem>
@ -33,26 +40,44 @@
<f:DropDownList ID="ddlMatI" runat="server" Label="Mat'l" AutoPostBack="true" Width="80px" LabelWidth="40px">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="Y" Text="Y"></f:ListItem>
<f:ListItem Value="Y1" Text="Y1"></f:ListItem>
<f:ListItem Value="Y2" Text="Y2"></f:ListItem>
<f:ListItem Value="N" Text="N"></f:ListItem>
</f:DropDownList>
<f:DropDownList ID="ddlPunchType" runat="server" Label="Punch Type" AutoPostBack="true" Width="180px" LabelWidth="100px">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="PWD" Text="PWD"></f:ListItem>
<f:ListItem Value="FWD" Text="FWD"></f:ListItem>
</f:DropDownList>
<f:Button ID="btnSearch" Icon="SystemSearch" EnablePostBack="true" runat="server" OnClick="btnSearch_Click" ToolTip="查询">
</f:Button>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<%-- <f:Button ID="btnNew" Icon="Add" EnablePostBack="true" runat="server" OnClick="btnNew_Click" ToolTip="新增" Hidden="true">
</f:Button>--%>
<%--<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" ToolTip="附件上传" runat="server" OnClick="btnAttach_Click">
</f:Button>--%>
<f:Button ID="btnNew" Icon="Add" EnablePostBack="false" runat="server" ToolTip="新增" Hidden="true">
</f:Button>
<f:Button ID="btnImport" ToolTip="导入" Icon="PackageIn" runat="server" OnClick="btnImport_Click" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DropDownList ID="ddlPunchType" runat="server" Label="Punch Type" AutoPostBack="true" Width="180px" LabelWidth="100px">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="PWD" Text="PWD"></f:ListItem>
<f:ListItem Value="FWD" Text="FWD"></f:ListItem>
</f:DropDownList>
<f:TextBox runat="server" ID="txtAction_By" Label="Action By" LabelWidth="80px" LabelAlign="Right" Width="180px"></f:TextBox>
<f:TextBox runat="server" ID="txtPIC" Label="责任人PIC" LabelWidth="90px" LabelAlign="Right" Width="180px"></f:TextBox>
<f:TextBox runat="server" ID="txtPIC_WUH" Label="责任人-五环/PIC-WUH" LabelWidth="180px" LabelAlign="Right" Width="300px"></f:TextBox>
<f:DropDownList ID="ddlStatus" runat="server" Label="状态/Status" AutoPostBack="true" Width="200px" LabelWidth="100px">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="Completed" Text="Completed"></f:ListItem>
<f:ListItem Value="Not Start" Text="Not Start"></f:ListItem>
<f:ListItem Value="In Progress" Text="In Progress"></f:ListItem>
</f:DropDownList>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server" ToolbarAlign="Left">
<Items>
<f:DatePicker runat="server" Label="Date Raised" ID="txtStartDate_Raised" LabelAlign="Right" LabelWidth="100px"
@ -123,11 +148,11 @@
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Num_NO" DataField="Num_NO" HeaderText="No." />
<f:BoundField Width="150px" TextAlign="Center" ColumnID="System_No" DataField="System_No" HeaderText="System No." />
<f:BoundField Width="120px" TextAlign="Center" ColumnID="System_No" DataField="System_No" HeaderText="系统号<br>System No." />
<f:BoundField Width="150px" TextAlign="Center" ColumnID="Sub_Sys_No" DataField="Sub_Sys_No" HeaderText="Sub-sys. No." />
<f:BoundField Width="120px" TextAlign="Center" ColumnID="Sub_Sys_No" DataField="Sub_Sys_No" HeaderText="子系统号<br>Sub-sys. No." />
<f:BoundField Width="150px" TextAlign="Center" ColumnID="DESCRIPTION" DataField="DESCRIPTION" HeaderText="Description" />
<f:BoundField Width="220px" TextAlign="left" ColumnID="DESCRIPTION" DataField="DESCRIPTION" HeaderText="尾项内容<br>Description" />
<f:TemplateField ColumnID="ImagePhotoes" Width="120px" HeaderText="Photoes" HeaderTextAlign="Center"
TextAlign="Left">
@ -137,29 +162,29 @@
</f:TemplateField>
<%--<f:BoundField Width="150px" TextAlign="Center" ColumnID="Photoes" DataField="Photoes" HeaderText="Photoes" />--%>
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Cat" DataField="Cat" HeaderText="Cat." />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Cat" DataField="Cat" HeaderText="尾项等级<br>Cat." />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Raised_By" DataField="Raised_By" HeaderText="Raised By" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Raised_By" DataField="Raised_By" HeaderText="提出人<br>Raised By" />
<f:RenderField Width="100px" TextAlign="Center" ColumnID="Date_Raised" DataField="Date_Raised" HeaderText="Date Raised" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:RenderField Width="100px" TextAlign="Center" ColumnID="Date_Raised" DataField="Date_Raised" HeaderText="提出时间<br>Date Raised" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Disc" DataField="Disc" HeaderText="Disc." />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Disc" DataField="Disc" HeaderText="专业<br>Disc." />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="IsEng" DataField="IsEngStr" HeaderText="Eng(Y/N)" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="IsEng" DataField="IsEngStr" HeaderText="设计需求<br>Eng(Y/N)" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="IsMatI" DataField="IsMatIStr" HeaderText="Matl(Y/N)" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="IsMatI" DataField="IsMatIStr" HeaderText="材料需求<br>Matl(Y/N)" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Punch_Type" DataField="Punch_Type" HeaderText="Punch Type" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Punch_Type" DataField="Punch_Type" HeaderText="尾项类别<br>Punch Type" />
<f:RenderField Width="150px" TextAlign="Center" ColumnID="Required_Date" DataField="Required_Date" HeaderText="Required Date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:RenderField Width="150px" TextAlign="Center" ColumnID="Required_Date" DataField="Required_Date" HeaderText="要求完成时间<br>Required Date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Action_By" DataField="Action_By" HeaderText="Action By" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="Action_By" DataField="Action_By" HeaderText="责任单位<br>Action By" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="PIC" DataField="PIC" HeaderText="PIC" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="PIC" DataField="PIC" HeaderText="责任人PIC" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="PIC_WUH" DataField="PIC_WUH" HeaderText="PIC-WUH" />
<f:BoundField Width="100px" TextAlign="Center" ColumnID="PIC_WUH" DataField="PIC_WUH" HeaderText="责任人-五环<br>PIC-WUH" />
<f:BoundField Width="150px" TextAlign="Center" ColumnID="Correction_Action" DataField="Correction_Action" HeaderText="Correction Action" />
<f:BoundField Width="220px" TextAlign="left" ColumnID="Correction_Action" DataField="Correction_Action" HeaderText="整改措施<br>Correction Action" />
<f:TemplateField ColumnID="ImageCorrected_Photos" Width="150px" HeaderText="Corrected Photos" HeaderTextAlign="Center"
TextAlign="Left">
@ -170,9 +195,9 @@
<%--<f:BoundField Width="150px" TextAlign="Center" ColumnID="Corrected_Photos" DataField="Corrected_Photos" HeaderText="Corrected Photos" />--%>
<f:RenderField Width="150px" TextAlign="Center" ColumnID="Actual_Date" DataField="Actual_Date" HeaderText="Actual Date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:RenderField Width="150px" TextAlign="Center" ColumnID="Actual_Date" DataField="Actual_Date" HeaderText="实际完成时间<br>Actual Date" FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" />
<f:GroupField HeaderText="Cleared(PIC" TextAlign="Center" MinWidth="200px">
<f:GroupField HeaderText="Cleared(PIC监理核查" TextAlign="Center" MinWidth="200px">
<Columns>
<f:RenderField Width="100px" ColumnID="Cleared_By" DataField="Cleared_By" HeaderText="By" TextAlign="Center" />
<f:RenderField Width="100px" ColumnID="Cleared_Date" DataField="Cleared_Date" HeaderText="Date" TextAlign="Center"
@ -180,7 +205,7 @@
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Confirmed(WUH)" TextAlign="Center" MinWidth="200px">
<f:GroupField HeaderText="Confirmed(WUH)确认(五环)" TextAlign="Center" MinWidth="200px">
<Columns>
<f:RenderField Width="100px" ColumnID="Confirmed_By" DataField="Confirmed_By" HeaderText="By" TextAlign="Center" />
<f:RenderField Width="100px" ColumnID="Confirmed_Date" DataField="Confirmed_Date" HeaderText="Date" TextAlign="Center"
@ -188,7 +213,7 @@
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Verified(BASF)" TextAlign="Center" MinWidth="200px">
<f:GroupField HeaderText="Verified(BASF)验收" TextAlign="Center" MinWidth="200px">
<Columns>
<f:RenderField Width="100px" ColumnID="Verified_By" DataField="Verified_By" HeaderText="By" TextAlign="Center" />
<f:RenderField Width="100px" ColumnID="Verified_Date" DataField="Verified_Date" HeaderText="Date" TextAlign="Center"
@ -196,9 +221,9 @@
</Columns>
</f:GroupField>
<f:BoundField Width="80px" TextAlign="Center" ColumnID="Status" DataField="Status" HeaderText="Status" />
<f:BoundField Width="80px" TextAlign="Center" ColumnID="Status" DataField="Status" HeaderText="状态<br>Status" />
<f:BoundField Width="80px" TextAlign="Center" ColumnID="Remark" DataField="Remark" HeaderText="Remark" />
<f:BoundField Width="80px" TextAlign="Center" ColumnID="Remark" DataField="Remark" HeaderText="备注<br>Remark" />
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
@ -225,14 +250,18 @@
Target="Top" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
Width="700px" Height="560px">
</f:Window>
<f:Window ID="Window1" Title="尾项管理" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="1200px"
Height="600px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<Items>
<%--<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click" Hidden="true">
</f:MenuButton>--%>
<f:MenuButton ID="btnMenuAttachA" runat="server" Icon="FolderUp" Text="Photoes附件" OnClick="btnMenuAttachA_Click" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuAttachB" runat="server" Icon="FolderUp" Text="Corrected_Photos附件" OnClick="btnMenuAttachB_Click" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuModify" EnablePostBack="true" runat="server" Text="修改" Icon="Pencil" OnClick="btnMenuModify_Click" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDel" EnablePostBack="true" runat="server" Icon="Delete" Text="删除" ConfirmText="确定删除当前数据?"
OnClick="btnMenuDel_Click" Hidden="true">
</f:MenuButton>

View File

@ -1,10 +1,20 @@
using BLL;
using BLL.Common;
using BLL.CQMS.Comprehensive;
using FineUIPro.Web.AttachFile;
using NPOI.SS.Formula.Functions;
using NPOI.SS.UserModel;
using NPOI.XSSF.Streaming.Values;
using NPOI.XSSF.UserModel;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Drawing.Imaging;
using System.IO;
using System.Linq;
using System.Web.Services.Description;
using static System.Windows.Forms.VisualStyles.VisualStyleElement.StartPanel;
namespace FineUIPro.Web.Transfer
{
@ -22,26 +32,25 @@ namespace FineUIPro.Web.Transfer
{
GetButtonPower();
BindGrid();
this.btnNew.OnClientClick = Window1.GetShowReference("PunchlistFromEdit.aspx") + "return false;";
}
}
/// <summary>
/// 数据绑定
/// </summary>
public void BindGrid()
public DataTable DataSql()
{
string strSql = @"select *
,(CASE isnull(IsEng,0) WHEN 1 THEN 'Y' ELSE 'N' END) IsEngStr
,(CASE isnull(IsMatI,0) WHEN 1 THEN 'Y' ELSE 'N' END) IsMatIStr
,IsMatI IsMatIStr
from Transfer_PunchlistFrom
where ProjectId = @ProjectId";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ProjectId", this.CurrUser.LoginProjectId));
if (!string.IsNullOrEmpty(this.txtNum_NO.Text.Trim()))
if (!string.IsNullOrEmpty(this.txtRaised_By.Text.Trim()))
{
strSql += " AND Num_NO like @Num_NO";
listStr.Add(new SqlParameter("@Num_NO", "%" + this.txtNum_NO.Text.Trim() + "%"));
strSql += " AND Raised_By = @Raised_By";
listStr.Add(new SqlParameter("@Raised_By", this.txtRaised_By.Text.Trim()));
}
if (!string.IsNullOrEmpty(this.txtSystem_No.Text.Trim()))
{
@ -96,16 +105,49 @@ namespace FineUIPro.Web.Transfer
if (!string.IsNullOrEmpty(ddlMatI.SelectedValue.Trim()))
{
strSql += " AND IsMatI = @IsMatI";
listStr.Add(new SqlParameter("@IsMatI", ddlMatI.SelectedValue.Trim() == "Y" ? 1 : 0));
listStr.Add(new SqlParameter("@IsMatI", ddlMatI.SelectedValue.Trim()));
}
if (!string.IsNullOrEmpty(ddlPunchType.SelectedValue.Trim()))
{
strSql += " AND Punch_Type = @Punch_Type";
listStr.Add(new SqlParameter("@Punch_Type", ddlPunchType.SelectedValue.Trim()));
}
if (!string.IsNullOrEmpty(ddlCat.SelectedValue.Trim()))
{
strSql += " AND Cat = @Cat";
listStr.Add(new SqlParameter("@Cat", ddlCat.SelectedValue.Trim()));
}
if (!string.IsNullOrEmpty(txtAction_By.Text.Trim()))
{
strSql += " AND Action_By = @Action_By";
listStr.Add(new SqlParameter("@Action_By", txtAction_By.Text.Trim()));
}
if (!string.IsNullOrEmpty(txtPIC.Text.Trim()))
{
strSql += " AND PIC = @PIC";
listStr.Add(new SqlParameter("@PIC", txtPIC.Text.Trim()));
}
if (!string.IsNullOrEmpty(txtPIC_WUH.Text.Trim()))
{
strSql += " AND PIC_WUH = @PIC_WUH";
listStr.Add(new SqlParameter("@PIC_WUH", txtPIC_WUH.Text.Trim()));
}
if (!string.IsNullOrEmpty(ddlStatus.SelectedValue.Trim()))
{
strSql += " AND Status = @Status";
listStr.Add(new SqlParameter("@Status", ddlStatus.SelectedValue.Trim()));
}
strSql += " order by Num_No ";
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
return SQLHelper.GetDataTableRunText(strSql, parameter);
}
/// <summary>
/// 数据绑定
/// </summary>
public void BindGrid()
{
DataTable tb = DataSql();
Grid1.RecordCount = tb.Rows.Count;
var table = this.GetPagedDataTable(Grid1, tb);
Grid1.DataSource = table;
@ -277,13 +319,13 @@ namespace FineUIPro.Web.Transfer
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
//this.btnNew.Hidden = false;
this.btnNew.Hidden = false;
btnMenuAttachA.Hidden = false;
btnMenuAttachB.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
//this.btnMenuModify.Hidden = false;
this.btnMenuModify.Hidden = false;
this.Grid1.EnableRowDoubleClickEvent = true;
btnMenuAttachA.Hidden = false;
btnMenuAttachB.Hidden = false;
@ -304,25 +346,230 @@ namespace FineUIPro.Web.Transfer
}
#endregion
#region
#region
/// <summary>
/// 附件上传
/// 右键编辑事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttach_Click(object sender, EventArgs e)
protected void btnMenuModify_Click(object sender, EventArgs e)
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.PunchlistFromMenuId);
if (buttonList.Contains(BLL.Const.BtnAdd))
if (Grid1.SelectedRowIndexArray.Length == 0)
{
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/Transfer/PunchlistFrom&menuId={1}", this.CurrUser.LoginProjectId + "PunchlistFrom", BLL.Const.PunchlistFromMenuId)));
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
else
string id = Grid1.SelectedRowID;
var accidentPersonRecord = Funs.DB.Transfer_PunchlistFrom.FirstOrDefault(p => p.Id == id);
if (accidentPersonRecord == null)
{
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../AttachFile/webuploader.aspx?type=-1&toKeyId={0}&path=FileUpload/Transfer/PunchlistFrom&menuId={1}", this.CurrUser.LoginProjectId + "PunchlistFrom", BLL.Const.PunchlistFromMenuId)));
Alert.ShowInTop("修改的数据已经不存在,请检查!", MessageBoxIcon.Warning);
return;
}
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("PunchlistFromEdit.aspx?Id={0}", id, "编辑 - ")));
}
#endregion
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
string rootPath = Server.MapPath("~/");
string initTemplatePath = string.Empty;
string uploadfilepath = string.Empty;
string newUrl = string.Empty;
string filePath = string.Empty;
initTemplatePath = "File\\Excel\\DataOut\\PunchlistFrom导出模板.xlsx";
uploadfilepath = rootPath + initTemplatePath;
DataTable tb = DataSql();
if (tb.Rows.Count <= 0)
{
ShowNotify("没有要导出的数据!!!", MessageBoxIcon.Warning);
return;
}
newUrl = uploadfilepath.Replace("导出模板", "导出数据").Replace(".xlsx", DateTime.Now.ToString("yyyyMMddHHmmss") + ".xlsx");
File.Copy(uploadfilepath, newUrl);
NPOI.SS.UserModel.IWorkbook workbook;
using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read))
{
workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream);
}
NPOI.SS.UserModel.ICellStyle cellStyleC = workbook.CreateCellStyle();
cellStyleC.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyleC.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyleC.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyleC.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
cellStyleC.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
cellStyleC.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
cellStyleC.WrapText = true;
NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
var pcList = Funs.DB.AttachFile.Where(p => p.MenuId == BLL.Const.PunchlistFromMenuId && p.AttachUrl != null && p.AttachUrl != "").ToList();
int i = 2;
foreach (DataRow tbRow in tb.Rows)
{
string Id = tbRow["Id"].ToString();
NPOI.SS.UserModel.IRow row = sheet.CreateRow(i);
NPOI.SS.UserModel.ICell cell;
cell = row.CreateCell(0);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Num_NO"] == null ? "" : tbRow["Num_NO"].ToString());
cell = row.CreateCell(1);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["System_No"] == null ? "" : tbRow["System_No"].ToString());
cell = row.CreateCell(2);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Sub_Sys_No"] == null ? "" : tbRow["Sub_Sys_No"].ToString());
cell = row.CreateCell(3);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["DESCRIPTION"] == null ? "" : tbRow["DESCRIPTION"].ToString());
//Photoes附件
var photoesUrl = pcList.FirstOrDefault(p => p.ToKeyId == $"{Id}_A");
if (photoesUrl != null && !string.IsNullOrWhiteSpace(photoesUrl.AttachUrl))
{
string[] arrUrl = photoesUrl.AttachUrl.Split(',');
sheet.SetColumnWidth(4, 30 * 256);
row.Height = (short)(90 * 20 * arrUrl.Length);
foreach (string url in arrUrl)
{
var oneUrl = Server.MapPath("~/") + url;
byte[] bytes = System.IO.File.ReadAllBytes(oneUrl);
int pictureIdx = workbook.AddPicture(bytes, PictureType.JPEG);
// 第三步:创建画部
IDrawing patriarch = sheet.CreateDrawingPatriarch();
// 第四步:设置锚点
int rowline = 1; // y方向
// 参数说明在起始单元格的X坐标0-1023Y的坐标0-255在终止单元格的X坐标0-1023Y的坐标0-255起始单元格列数行数终止单元格列数行数
IClientAnchor anchor = patriarch.CreateAnchor(0, 0, 0, 0, 4, i, 5, i + 1);
// 第五步:把图片插到相应的位置+1
IPicture pict = patriarch.CreatePicture(anchor, pictureIdx);
//就取第一张,如果后期想取全部 那把下面这个跳出语句去掉
break;
}
}
cell = row.CreateCell(5);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Cat"] == null ? "" : tbRow["Cat"].ToString());
cell = row.CreateCell(6);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Raised_By"] == null ? "" : tbRow["Raised_By"].ToString());
cell = row.CreateCell(7);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Date_Raised"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Date_Raised"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(8);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Disc"] == null ? "" : tbRow["Disc"].ToString());
cell = row.CreateCell(9);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["IsEngStr"] == null ? "" : tbRow["IsEngStr"].ToString());
cell = row.CreateCell(10);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["IsMatIStr"] == null ? "" : tbRow["IsMatIStr"].ToString());
cell = row.CreateCell(11);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Punch_Type"] == null ? "" : tbRow["Punch_Type"].ToString());
cell = row.CreateCell(12);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Required_Date"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Required_Date"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(13);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Action_By"] == null ? "" : tbRow["Action_By"].ToString());
cell = row.CreateCell(14);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["PIC"] == null ? "" : tbRow["PIC"].ToString());
cell = row.CreateCell(15);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["PIC_WUH"] == null ? "" : tbRow["PIC_WUH"].ToString());
cell = row.CreateCell(16);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Correction_Action"] == null ? "" : tbRow["Correction_Action"].ToString());
//CorrectedPhotos附件
var correctedPhotosUrl = pcList.FirstOrDefault(p => p.ToKeyId == $"{Id}_B");
if (correctedPhotosUrl != null && !string.IsNullOrWhiteSpace(correctedPhotosUrl.AttachUrl))
{
string[] arrUrl = correctedPhotosUrl.AttachUrl.Split(',');
sheet.SetColumnWidth(17, 30 * 256);
row.Height = (short)(90 * 20);
foreach (string url in arrUrl)
{
var oneUrl = Server.MapPath("~/") + url;
byte[] bytes = System.IO.File.ReadAllBytes(oneUrl);
int pictureIdx = workbook.AddPicture(bytes, PictureType.JPEG);
// 第三步:创建画部
IDrawing patriarch = sheet.CreateDrawingPatriarch();
// 第四步:设置锚点
int rowline = 1; // y方向
// 参数说明在起始单元格的X坐标0-1023Y的坐标0-255在终止单元格的X坐标0-1023Y的坐标0-255起始单元格列数行数终止单元格列数行数
IClientAnchor anchor = patriarch.CreateAnchor(0, 0, 0, 0, 17, i, 18, i + 1);
// 第五步:把图片插到相应的位置+1
IPicture pict = patriarch.CreatePicture(anchor, pictureIdx);
//就取第一张,如果后期想取全部 那把下面这个跳出语句去掉
break;
}
}
cell = row.CreateCell(18);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Actual_Date"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Actual_Date"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(19);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Cleared_By"] == null ? "" : tbRow["Cleared_By"].ToString());
cell = row.CreateCell(20);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Cleared_Date"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Cleared_Date"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(21);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Confirmed_By"] == null ? "" : tbRow["Confirmed_By"].ToString());
cell = row.CreateCell(22);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Confirmed_Date"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Confirmed_Date"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(23);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Verified_By"] == null ? "" : tbRow["Verified_By"].ToString());
cell = row.CreateCell(24);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Verified_Date"] == DBNull.Value ? "" : Convert.ToDateTime(tbRow["Verified_Date"]).ToString("yyyy-MM-dd"));
cell = row.CreateCell(25);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Status"] == null ? "" : tbRow["Status"].ToString());
cell = row.CreateCell(26);
cell.CellStyle = cellStyleC;
cell.SetCellValue(tbRow["Remark"] == null ? "" : tbRow["Remark"].ToString());
i++;
}
// 第三步:写入文件流
using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write))
{
workbook.Write(stream);
workbook.Close();
}
string fileName = Path.GetFileName(newUrl);
FileInfo info = new FileInfo(newUrl);
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(newUrl, 0, fileSize);
Response.Flush();
Response.Close();
File.Delete(newUrl);
}
}
}

View File

@ -59,15 +59,6 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.Toolbar ToolSearch;
/// <summary>
/// txtNum_NO 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtNum_NO;
/// <summary>
/// txtSystem_No 控件。
/// </summary>
@ -86,6 +77,24 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.TextBox txtSub_Sys_No;
/// <summary>
/// ddlCat 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlCat;
/// <summary>
/// txtRaised_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRaised_By;
/// <summary>
/// txtDisc 控件。
/// </summary>
@ -113,15 +122,6 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.DropDownList ddlMatI;
/// <summary>
/// ddlPunchType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPunchType;
/// <summary>
/// btnSearch 控件。
/// </summary>
@ -131,6 +131,15 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.Button btnSearch;
/// <summary>
/// btnNew 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnNew;
/// <summary>
/// btnImport 控件。
/// </summary>
@ -140,6 +149,69 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// ddlPunchType 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPunchType;
/// <summary>
/// txtAction_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAction_By;
/// <summary>
/// txtPIC 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPIC;
/// <summary>
/// txtPIC_WUH 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPIC_WUH;
/// <summary>
/// ddlStatus 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlStatus;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@ -284,6 +356,15 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.Window Window2;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
@ -311,6 +392,15 @@ namespace FineUIPro.Web.Transfer
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuAttachB;
/// <summary>
/// btnMenuModify 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuModify;
/// <summary>
/// btnMenuDel 控件。
/// </summary>

View File

@ -106,7 +106,7 @@ namespace FineUIPro.Web.Transfer
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
oleDBConnString += ";Extended Properties='Excel 8.0;IMEX=1; 8.0;HDR=1;'";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
@ -130,7 +130,7 @@ namespace FineUIPro.Web.Transfer
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL(ds.Tables[0], 24);
AddDatasetToSQL(ds.Tables[0], 23);
hdCheckResult.Text = "1";
}
catch (Exception exc)
@ -169,7 +169,7 @@ namespace FineUIPro.Web.Transfer
for (int i = 1; i < ir; i++)
{
string allRowData = string.Empty;
for (int j = 0; j < 24; j++)
for (int j = 0; j < 23; j++)
{
allRowData += pds.Rows[i][j].ToString();
}
@ -343,7 +343,7 @@ namespace FineUIPro.Web.Transfer
oleDBConnString = "Provider=Microsoft.Jet.OLEDB.4.0;";
oleDBConnString += "Data Source=";
oleDBConnString += fileName;
oleDBConnString += ";Extended Properties=Excel 8.0;";
oleDBConnString += ";Extended Properties='Excel 8.0;IMEX=1; 8.0;HDR=1;'";
OleDbConnection oleDBConn = null;
OleDbDataAdapter oleAdMaster = null;
DataTable m_tableName = new DataTable();
@ -367,7 +367,7 @@ namespace FineUIPro.Web.Transfer
oleDBConn.Close();
oleDBConn.Dispose();
AddDatasetToSQL2(ds.Tables[0], 24);
AddDatasetToSQL2(ds.Tables[0], 23);
}
catch (Exception ex)
{
@ -393,7 +393,7 @@ namespace FineUIPro.Web.Transfer
}
string result = string.Empty;
ir = pds.Rows.Count;
long? maxNumNO = -1;
var maxNumNO = 0;
if (pds != null && ir > 0)
{
List<Model.Transfer_PunchlistFrom> list = new List<Model.Transfer_PunchlistFrom>();
@ -402,10 +402,12 @@ namespace FineUIPro.Web.Transfer
if (!string.IsNullOrEmpty(pds.Rows[i][1].ToString().Trim()))
{
//查询第一列,没查到的情况下作导入处理
if (maxNumNO == -1) {
maxNumNO = Funs.DB.Transfer_PunchlistFrom.Where(x => x.ProjectId == CurrUser.LoginProjectId).Max(p => p.Num_NO);
if (maxNumNO == null)
maxNumNO = 1001;
if (maxNumNO == 0) {
var modelTp = Funs.DB.Transfer_PunchlistFrom.OrderByDescending(x=>x.Num_NO).FirstOrDefault(x => x.ProjectId == CurrUser.LoginProjectId);
if (modelTp == null)
maxNumNO = 1;
else
maxNumNO = Convert.ToInt32(modelTp.Num_NO) + 1;
}
@ -414,7 +416,7 @@ namespace FineUIPro.Web.Transfer
model.Id = Guid.NewGuid().ToString();
model.ProjectId = CurrUser.LoginProjectId;
model.Num_NO = maxNumNO;
model.Num_NO = maxNumNO.ToString("0000");
model.System_No = pds.Rows[i][0].ToString().Trim();
model.Sub_Sys_No = pds.Rows[i][1].ToString().Trim();
model.DESCRIPTION = pds.Rows[i][2].ToString().Trim();
@ -431,10 +433,8 @@ namespace FineUIPro.Web.Transfer
else
model.IsEng = false;
if (pds.Rows[i][8].ToString().Trim().Contains("Y"))
model.IsMatI = true;
else
model.IsMatI = false;
model.IsMatI = pds.Rows[i][8].ToString().Trim();
model.Punch_Type = pds.Rows[i][9].ToString().Trim();
DateTime t10;
if (DateTime.TryParse(pds.Rows[i][10].ToString(), out t10) && !string.IsNullOrEmpty(pds.Rows[i][10].ToString()))
@ -445,7 +445,7 @@ namespace FineUIPro.Web.Transfer
model.Correction_Action = pds.Rows[i][14].ToString().Trim();
DateTime t15;
if (DateTime.TryParse(pds.Rows[i][15].ToString(), out t15) && !string.IsNullOrEmpty(pds.Rows[i][15].ToString()))
model.PUNCH_ITEM_FINISH_DATE = t15;
model.Actual_Date = t15;
model.Cleared_By = pds.Rows[i][16].ToString().Trim();
DateTime t17;
if (DateTime.TryParse(pds.Rows[i][17].ToString(), out t17) && !string.IsNullOrEmpty(pds.Rows[i][17].ToString()))
@ -458,8 +458,16 @@ namespace FineUIPro.Web.Transfer
DateTime t21;
if (DateTime.TryParse(pds.Rows[i][21].ToString(), out t21) && !string.IsNullOrEmpty(pds.Rows[i][21].ToString()))
model.Verified_Date = t21;
model.Status = pds.Rows[i][22].ToString().Trim();
model.Remark = pds.Rows[i][23].ToString().Trim();
model.Remark = pds.Rows[i][22].ToString().Trim();
if (model.Cleared_Date == null && model.Confirmed_Date == null && model.Verified_Date == null)
model.Status = "Not Start";
else if (model.Cleared_Date != null && model.Confirmed_Date != null && model.Verified_Date != null)
model.Status = "Completed";
else
model.Status = "In Progress";
list.Add(model);
maxNumNO++;
}

View File

@ -0,0 +1,162 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PunchlistFromEdit.aspx.cs" Inherits="FineUIPro.Web.Transfer.PunchlistFromEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>尾项管理新增编辑</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="SimpleForm1" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" Title="HSE事故(对人员)记录"
AutoScroll="true" BodyPadding="10px" runat="server" RedStarPosition="BeforeText"
LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtSystem_No" runat="server" Label="系统号/System No." LabelAlign="Right" LabelWidth="180px" Required="true" ShowRedStar="true">
</f:TextBox>
<f:TextBox ID="txtSub_Sys_No" runat="server" Label="子系统号/Sub-sys. No." LabelAlign="Right" LabelWidth="200px" Required="true" ShowRedStar="true">
</f:TextBox>
<f:DropDownList ID="ddlCat" runat="server" Label="Cat." LabelWidth="200px" Required="true" ShowRedStar="true">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="A" Text="A"></f:ListItem>
<f:ListItem Value="B" Text="B"></f:ListItem>
<f:ListItem Value="C" Text="C"></f:ListItem>
<f:ListItem Value="D" Text="D"></f:ListItem>
</f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtRaised_By" runat="server" Label="提出人/Raised By" LabelAlign="Right" LabelWidth="180px" Required="true" ShowRedStar="true">
</f:TextBox>
<f:DatePicker runat="server" Label="提出时间/Date Raised" ID="txtDate_Raised" LabelAlign="Right" LabelWidth="200px" Width="300px" Required="true" ShowRedStar="true">
</f:DatePicker>
<f:TextBox ID="txtDisc" runat="server" Label="专业/Disc." LabelAlign="Right" LabelWidth="200px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="ddlIsEng" runat="server" Label="设计需求/Eng(Y/N)" LabelWidth="180px" Required="true" ShowRedStar="true">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="Y" Text="Y"></f:ListItem>
<f:ListItem Value="N" Text="N"></f:ListItem>
</f:DropDownList>
<f:DropDownList ID="ddlIsMatI" runat="server" Label="材料需求/Matl(Y/N)" LabelWidth="200px" Width="300px" Required="true" ShowRedStar="true">
<f:ListItem Value="" Text=""></f:ListItem>
<f:ListItem Value="Y" Text="Y"></f:ListItem>
<f:ListItem Value="Y1" Text="Y1"></f:ListItem>
<f:ListItem Value="Y2" Text="Y2"></f:ListItem>
<f:ListItem Value="N" Text="N"></f:ListItem>
</f:DropDownList>
<f:TextBox ID="txtPunch_Type" runat="server" Label="尾项类别/Punch Type" LabelAlign="Right" LabelWidth="200px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker runat="server" Label="要求完成时间/Required Date" ID="txtRequired_Date" LabelAlign="Right" LabelWidth="210px" Required="true" ShowRedStar="true">
</f:DatePicker>
<f:TextBox ID="txtAction_By" runat="server" Label="责任单位/Action By" LabelAlign="Right" LabelWidth="200px" Width="300px" Required="true" ShowRedStar="true">
</f:TextBox>
<f:TextBox ID="txtPIC" runat="server" Label="责任人PIC" LabelAlign="Right" LabelWidth="200px" Required="true" ShowRedStar="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtPIC_WUH" runat="server" Label="责任人-五环/PIC-WUH" LabelAlign="Right" LabelWidth="180px" Required="true" ShowRedStar="true">
</f:TextBox>
<f:DatePicker runat="server" Label="实际完成时间/Actual Date" ID="txtActual_Date" LabelAlign="Right" LabelWidth="180px" Width="300px">
</f:DatePicker>
<f:ToolbarFill runat="server"></f:ToolbarFill>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtDESCRIPTION" runat="server" Label="尾项内容/Description" LabelAlign="Right" LabelWidth="180px"></f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtCorrection_Action" runat="server" Label="整改措施/Correction Action" LabelAlign="Right" LabelWidth="200px" Width="300px">
</f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:GroupPanel Layout="Anchor" Title="Cleared(PIC/监理核查" runat="server">
<Items>
<f:Panel ID="Panel2" Layout="HBox" BoxConfigAlign="Stretch" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextBox ID="txtCleared_By" runat="server" Label="负责人/By" LabelAlign="Right" LabelWidth="90px" Width="180px">
</f:TextBox>
<f:DatePicker runat="server" Label="日期/Date" ID="txtCleared_Date" LabelAlign="Right" LabelWidth="90px" Width="190px">
</f:DatePicker>
</Items>
</f:Panel>
</Items>
</f:GroupPanel>
<f:GroupPanel Layout="Anchor" Title="Confirmed(WUH)确认(五环)" runat="server">
<Items>
<f:Panel ID="Panel1" Layout="HBox" BoxConfigAlign="Stretch" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextBox ID="txtConfirmed_By" runat="server" Label="负责人/By" LabelAlign="Right" LabelWidth="90px" Width="180px">
</f:TextBox>
<f:DatePicker runat="server" Label="日期/Date" ID="txtConfirmed_Date" LabelAlign="Right" LabelWidth="90px" Width="190px">
</f:DatePicker>
</Items>
</f:Panel>
</Items>
</f:GroupPanel>
<f:GroupPanel Layout="Anchor" Title="Verified(BASF)验收" runat="server">
<Items>
<f:Panel ID="Panel3" Layout="HBox" BoxConfigAlign="Stretch" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextBox ID="txtVerified_By" runat="server" Label="负责人/By" LabelAlign="Right" LabelWidth="90px" Width="180px">
</f:TextBox>
<f:DatePicker runat="server" Label="日期/Date" ID="txtVerified_Date" LabelAlign="Right" LabelWidth="90px" Width="190px">
</f:DatePicker>
</Items>
</f:Panel>
</Items>
</f:GroupPanel>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea runat="server" ID="txtRemark" Label="备注/Remark" LabelWidth="200px" MarginTop="10px"></f:TextArea>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:Button ID="btnAttach_A" Text="Photoes附件" ToolTip="上传及查看" ValidateForms="SimpleForm1" Icon="TableCell" runat="server"
OnClick="btnAttachA_Click">
</f:Button>
<f:Button ID="btnAttach_B" Text="Corrected Photos附件" ToolTip="上传及查看" ValidateForms="SimpleForm1" Icon="TableCell" runat="server"
OnClick="btnAttachB_Click">
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" ValidateForms="SimpleForm1" Text="保存"
OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px">
</f:Window>
</form>
</body>
</html>

View File

@ -0,0 +1,222 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Xml;
using static System.Windows.Forms.VisualStyles.VisualStyleElement;
namespace FineUIPro.Web.Transfer
{
public partial class PunchlistFromEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
private string Id
{
get
{
return (string)ViewState["Id"];
}
set
{
ViewState["Id"] = value;
}
}
/// <summary>
/// 项目主键
/// </summary>
public string ProjectId
{
get
{
return (string)ViewState["ProjectId"];
}
set
{
ViewState["ProjectId"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.Id = Request.Params["Id"];
this.ProjectId = this.CurrUser.LoginProjectId;
var TransferPunchlistFrom = Funs.DB.Transfer_PunchlistFrom.FirstOrDefault(p => p.Id == this.Id);
if (TransferPunchlistFrom != null)
{
this.txtSystem_No.Text = TransferPunchlistFrom.System_No;
this.txtSub_Sys_No.Text = TransferPunchlistFrom.Sub_Sys_No;
this.txtDESCRIPTION.Text = TransferPunchlistFrom.DESCRIPTION;
this.ddlCat.SelectedValue = TransferPunchlistFrom.Cat;
this.txtRaised_By.Text = TransferPunchlistFrom.Raised_By;
if (TransferPunchlistFrom.Date_Raised != null)
this.txtDate_Raised.Text = Convert.ToDateTime(TransferPunchlistFrom.Date_Raised).ToString("yyyy-MM-dd");
this.txtDisc.Text = TransferPunchlistFrom.Disc;
if (TransferPunchlistFrom.IsEng == true)
this.ddlIsEng.SelectedValue = "Y";
else
this.ddlIsEng.SelectedValue = "N";
this.ddlIsMatI.SelectedValue = TransferPunchlistFrom.IsMatI ?? "";
this.txtPunch_Type.Text = TransferPunchlistFrom.Punch_Type;
if (TransferPunchlistFrom.Required_Date != null)
this.txtRequired_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Required_Date).ToString("yyyy-MM-dd");
this.txtAction_By.Text = TransferPunchlistFrom.Action_By;
this.txtPIC.Text = TransferPunchlistFrom.PIC;
this.txtPIC_WUH.Text = TransferPunchlistFrom.PIC_WUH;
this.txtCorrection_Action.Text = TransferPunchlistFrom.Correction_Action;
if (TransferPunchlistFrom.Actual_Date != null)
this.txtActual_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Actual_Date).ToString("yyyy-MM-dd");
this.txtCleared_By.Text = TransferPunchlistFrom.Cleared_By;
if (TransferPunchlistFrom.Cleared_Date != null)
this.txtCleared_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Cleared_Date).ToString("yyyy-MM-dd");
this.txtConfirmed_By.Text = TransferPunchlistFrom.Confirmed_By;
if (TransferPunchlistFrom.Confirmed_Date != null)
this.txtConfirmed_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Confirmed_Date).ToString("yyyy-MM-dd");
this.txtVerified_By.Text = TransferPunchlistFrom.Verified_By;
if (TransferPunchlistFrom.Verified_Date != null)
this.txtVerified_Date.Text = Convert.ToDateTime(TransferPunchlistFrom.Verified_Date).ToString("yyyy-MM-dd");
this.txtRemark.Text = TransferPunchlistFrom.Remark;
}
}
}
/// <summary>
/// Photoes附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttachA_Click(object sender, EventArgs e)
{
AttachFileClick("A");
}
/// <summary>
/// Corrected Photos附件上传
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnAttachB_Click(object sender, EventArgs e)
{
AttachFileClick("B");
}
/// <summary>
/// 通过不同的type来保存附件
/// </summary>
/// <param name="type"></param>
private void AttachFileClick(string type)
{
SaveData();
PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../AttachFile/webuploader.aspx?type=0&toKeyId={0}_{1}&path=FileUpload/Transfer/PunchlistFrom&menuId={2}", this.Id, type, BLL.Const.PunchlistFromMenuId)));
}
/// <summary>
/// 保存
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (SaveData() == 0) {
Alert.ShowInTop("保存失败!", MessageBoxIcon.Warning);
return;
}
ShowNotify("保存成功",MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
/// <summary>
/// 保存数据
/// </summary>
/// <returns></returns>
private int SaveData()
{
int reutState = 0;
var maxNumNO = 0;
var modelTp = Funs.DB.Transfer_PunchlistFrom.OrderByDescending(x => x.Num_NO).FirstOrDefault(x => x.ProjectId == CurrUser.LoginProjectId);
if (modelTp == null)
maxNumNO = 1;
else
maxNumNO = Convert.ToInt32(modelTp.Num_NO) + 1;
Model.Transfer_PunchlistFrom newTransferFrom = new Model.Transfer_PunchlistFrom()
{
Id= Guid.NewGuid().ToString(),
Num_NO = maxNumNO.ToString("0000"),
ProjectId=this.ProjectId,
System_No = this.txtSystem_No.Text.Trim(),
Sub_Sys_No = this.txtSub_Sys_No.Text.Trim(),
DESCRIPTION = this.txtDESCRIPTION.Text.Trim(),
Cat = this.ddlCat.SelectedValue,
Raised_By = this.txtRaised_By.Text.Trim(),
Date_Raised = Funs.GetNewDateTime(this.txtDate_Raised.Text),
Disc = this.txtDisc.Text.Trim(),
IsEng = this.ddlIsEng.SelectedValue == "Y" ? true : false,
IsMatI = this.ddlIsMatI.SelectedValue,
Punch_Type = this.txtPunch_Type.Text.Trim(),
Required_Date= Funs.GetNewDateTime(this.txtRequired_Date.Text),
Action_By= this.txtAction_By.Text.Trim(),
PIC= this.txtPIC.Text.Trim(),
PIC_WUH=this.txtPIC_WUH.Text.Trim(),
Correction_Action= this.txtCorrection_Action.Text.Trim(),
Actual_Date = Funs.GetNewDateTime(this.txtActual_Date.Text),
Cleared_By= this.txtCleared_By.Text.Trim(),
Cleared_Date = Funs.GetNewDateTime(this.txtCleared_Date.Text),
Confirmed_By= this.txtConfirmed_By.Text.Trim(),
Confirmed_Date = Funs.GetNewDateTime(this.txtConfirmed_Date.Text),
Verified_By= this.txtVerified_By.Text.Trim(),
Verified_Date = Funs.GetNewDateTime(this.txtVerified_Date.Text),
Remark= this.txtRemark.Text.Trim()
};
if (newTransferFrom.Cleared_Date == null && newTransferFrom.Confirmed_Date == null && newTransferFrom.Verified_Date == null)
newTransferFrom.Status = "Not Start";
else if (newTransferFrom.Cleared_Date != null && newTransferFrom.Confirmed_Date != null && newTransferFrom.Verified_Date != null)
newTransferFrom.Status = "Completed";
else
newTransferFrom.Status = "In Progress";
var TransferPunchlistFrom = Funs.DB.Transfer_PunchlistFrom.FirstOrDefault(p => p.Id == this.Id);
if (TransferPunchlistFrom == null)
{
Funs.DB.Transfer_PunchlistFrom.InsertOnSubmit(newTransferFrom);
this.Id = newTransferFrom.Id;
}
else
{
TransferPunchlistFrom.System_No = newTransferFrom.System_No;
TransferPunchlistFrom.Sub_Sys_No = newTransferFrom.Sub_Sys_No;
TransferPunchlistFrom.DESCRIPTION = newTransferFrom.DESCRIPTION;
TransferPunchlistFrom.Cat = newTransferFrom.Cat;
TransferPunchlistFrom.Raised_By = newTransferFrom.Raised_By;
TransferPunchlistFrom.Date_Raised = newTransferFrom.Date_Raised;
TransferPunchlistFrom.Disc = newTransferFrom.Disc;
TransferPunchlistFrom.IsEng = newTransferFrom.IsEng;
TransferPunchlistFrom.IsMatI = newTransferFrom.IsMatI;
TransferPunchlistFrom.Punch_Type = newTransferFrom.Punch_Type;
TransferPunchlistFrom.Required_Date = newTransferFrom.Required_Date;
TransferPunchlistFrom.Action_By = newTransferFrom.Action_By;
TransferPunchlistFrom.PIC = newTransferFrom.PIC;
TransferPunchlistFrom.PIC_WUH = newTransferFrom.PIC_WUH;
TransferPunchlistFrom.Correction_Action = newTransferFrom.Correction_Action;
TransferPunchlistFrom.Actual_Date = newTransferFrom.Actual_Date;
TransferPunchlistFrom.Cleared_By = newTransferFrom.Cleared_By;
TransferPunchlistFrom.Cleared_Date = newTransferFrom.Cleared_Date;
TransferPunchlistFrom.Confirmed_By = newTransferFrom.Confirmed_By;
TransferPunchlistFrom.Confirmed_Date = newTransferFrom.Confirmed_Date;
TransferPunchlistFrom.Verified_By = newTransferFrom.Verified_By;
TransferPunchlistFrom.Verified_Date = newTransferFrom.Verified_Date;
TransferPunchlistFrom.Remark = newTransferFrom.Remark;
TransferPunchlistFrom.Status = newTransferFrom.Status;
}
Funs.DB.SubmitChanges();
reutState = 1;
return reutState;
}
}
}

View File

@ -0,0 +1,332 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Transfer
{
public partial class PunchlistFromEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// txtSystem_No 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSystem_No;
/// <summary>
/// txtSub_Sys_No 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSub_Sys_No;
/// <summary>
/// ddlCat 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlCat;
/// <summary>
/// txtRaised_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRaised_By;
/// <summary>
/// txtDate_Raised 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtDate_Raised;
/// <summary>
/// txtDisc 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtDisc;
/// <summary>
/// ddlIsEng 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlIsEng;
/// <summary>
/// ddlIsMatI 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlIsMatI;
/// <summary>
/// txtPunch_Type 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPunch_Type;
/// <summary>
/// txtRequired_Date 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtRequired_Date;
/// <summary>
/// txtAction_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAction_By;
/// <summary>
/// txtPIC 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPIC;
/// <summary>
/// txtPIC_WUH 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtPIC_WUH;
/// <summary>
/// txtActual_Date 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtActual_Date;
/// <summary>
/// txtDESCRIPTION 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtDESCRIPTION;
/// <summary>
/// txtCorrection_Action 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtCorrection_Action;
/// <summary>
/// Panel2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel2;
/// <summary>
/// txtCleared_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtCleared_By;
/// <summary>
/// txtCleared_Date 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtCleared_Date;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// txtConfirmed_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtConfirmed_By;
/// <summary>
/// txtConfirmed_Date 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtConfirmed_Date;
/// <summary>
/// Panel3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel3;
/// <summary>
/// txtVerified_By 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtVerified_By;
/// <summary>
/// txtVerified_Date 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtVerified_Date;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtRemark;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnAttach_A 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttach_A;
/// <summary>
/// btnAttach_B 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAttach_B;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// WindowAtt 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window WindowAtt;
}
}

View File

@ -24,7 +24,7 @@
<Items>
<f:TextBox runat="server" ID="txtRotatingEquipment" Label="Tag. No" LabelWidth="120px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="System" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="System No" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:DropDownList runat="server" ID="ddStatus" Label="Status">
<f:ListItem Value="" Text="All" Selected="true"/>
@ -57,36 +57,36 @@
</ItemTemplate>
</f:TemplateField>--%>
<f:RenderField ColumnID="RotatingEquipment" DataField="RotatingEquipment" FieldType="String" HeaderText="Tag. No" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="System" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="System No" TextAlign="Center"
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="Subsystem" DataField="Subsystem" FieldType="String" HeaderText="Sub-System" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="TestPackage" DataField="TestPackage" FieldType="String" HeaderText="Turn over Package" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="160px">
</f:RenderField>
<f:RenderField ColumnID="Alignment" DataField="Alignment" FieldType="String" HeaderText="Alignment" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="Motorsoloruntest" DataField="Motorsoloruntest" FieldType="String" HeaderText="Motor solorun test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="140px">
</f:RenderField>
<f:RenderField ColumnID="Standalonetest" DataField="Standalonetest" FieldType="String" HeaderText="Standalone test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="140px">
</f:RenderField>
<f:RenderField ColumnID="MechanicalFINALStatus" DataField="MechanicalFINALStatus" FieldType="String" HeaderText="FINAL Status" ExpandUnusedSpace="true" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="200px">
</f:RenderField>
</Columns>
<Listeners>

View File

@ -24,7 +24,7 @@
<Items>
<f:TextBox runat="server" ID="txtStaticEquipment" Label="Tag No" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="SYSTEM" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="System No" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<%-- <f:DatePicker runat="server" Label="Test_Package_START" ID="txtStarTime" LabelAlign="Right" LabelWidth="150px"
Width="280px">
@ -59,35 +59,35 @@
<f:GroupField ID="g1" HeaderText="MECHANICAL" HeaderTextAlign="Center">
<Columns>
<f:RenderField ColumnID="StaticEquipment" DataField="StaticEquipment" FieldType="String" HeaderText="Tag No" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="140px">
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField ID="g2" HeaderText="SYSTEM AND TEST PACKAGE SELECTION" HeaderTextAlign="Center">
<Columns>
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="SYSTEM" TextAlign="Center"
HeaderTextAlign="Center" Width="160px">
<f:RenderField ColumnID="SYSTEM" DataField="SYSTEM" FieldType="String" HeaderText="System No" TextAlign="Center"
HeaderTextAlign="Center" Width="140px">
</f:RenderField>
<f:RenderField ColumnID="Subsystem" DataField="Subsystem" FieldType="String" HeaderText="Subsystem" TextAlign="Center"
HeaderTextAlign="Center" Width="160px">
HeaderTextAlign="Center" Width="140px">
</f:RenderField>
<f:RenderField ColumnID="TestPackage" DataField="TestPackage" FieldType="String" HeaderText="Turn over Package" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="160px">
</f:RenderField>
</Columns>
</f:GroupField>
<f:GroupField ID="g3" HeaderText="Test Package Schedule" HeaderTextAlign="Center">
<Columns>
<f:RenderField ColumnID="Internalinspection" DataField="Internalinspection" FieldType="String" HeaderText="Internal inspection " TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="160px">
</f:RenderField>
<f:RenderField ColumnID="InternalsPacking" DataField="InternalsPacking" FieldType="String" HeaderText="Internals/Packing<br/> installation " TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="160px">
</f:RenderField>
<f:RenderField ColumnID="BOXupRecord" DataField="BOXupRecord" FieldType="String" HeaderText="BOX-up Record" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" Width="160px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -24,7 +24,7 @@
<f:TextBox runat="server" ID="txtTelecom" Label="Telecom" LabelWidth="120px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="SYSTEM" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:TextBox runat="server" ID="txtSystem" Label="System No" LabelWidth="100px" LabelAlign="Right"></f:TextBox>
<f:DropDownList runat="server" ID="ddStatus" Label="Status">
<f:ListItem Value="" Text="All" Selected="true"/>
@ -56,34 +56,34 @@
<f:GroupField HeaderText="Telecom" TextAlign="Center" MinWidth="200px">
<Columns>
<f:BoundField Width="200px" TextAlign="Center" ColumnID="Telecom" DataField="Telecom" HeaderText="Telecom" />
<f:BoundField minWidth="120px" TextAlign="Center" ColumnID="Telecom" DataField="Telecom" HeaderText="Telecom" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="SYSTEM AND TEST PACKAGE SELECTION" TextAlign="Center" MinWidth="450">
<Columns>
<f:BoundField Width="150px" ColumnID="SystemName" DataField="SystemName" HeaderText="SYSTEM" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField Width="150px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="SystemName" DataField="SystemName" HeaderText="System No" TextAlign="Center"/>
<f:BoundField minWidth="120px" ColumnID="Subsystem" DataField="Subsystem" HeaderText="Subsystem" TextAlign="Center"/>
<f:BoundField minWidth="140px" ColumnID="Test_Package" DataField="Test_Package" HeaderText="Test Package" TextAlign="Center"/>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="Test Package Schedule" TextAlign="Center" MinWidth="400px">
<Columns>
<f:RenderField ColumnID="Installation" DataField="Installation" FieldType="String" HeaderText="Installation<br/> &Inspection Reocrd" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="160px">
</f:RenderField>
<f:RenderField ColumnID="Communication" DataField="Communication" FieldType="String" HeaderText="Communication<br/> test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="160px">
</f:RenderField>
<f:RenderField ColumnID="CableLaying" DataField="CableLaying" FieldType="String" HeaderText="Cable Laying and<br/> Insulation Test<br/> Record" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="160px">
</f:RenderField>
<f:RenderField ColumnID="FunctionTest" DataField="FunctionTest" FieldType="String" HeaderText="Function Test" TextAlign="Center"
HeaderTextAlign="Center" Width="200px">
HeaderTextAlign="Center" minWidth="160px">
</f:RenderField>
</Columns>
</f:GroupField>

View File

@ -12,7 +12,7 @@
<appSettings>
<!--连接字符串-->
<!--<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>-->
<add key="ConnectionString" value="Server=.;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>
<add key="ConnectionString" value="Server=.\SQL2012;Database=SGGLDB_WH;Integrated Security=False;User ID=sa;Password=1111;MultipleActiveResultSets=true;Connect Timeout=1200"/>
<!--系统名称-->
<add key="SystemName" value="智慧施工管理信息系统V1.0"/>
<add key="ChartImageHandler" value="storage=file;timeout=20;url=~/Images/;"/>
@ -77,7 +77,7 @@
<add verb="GET" path="res.axd" type="FineUIPro.ResourceHandler, FineUIPro" validate="false"/>
<add path="ChartImg.axd" verb="GET,POST,HEAD" type="System.Web.UI.DataVisualization.Charting.ChartHttpHandler, System.Web.DataVisualization, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
</httpHandlers>
<compilation debug="false" targetFramework="4.6.1"/>
<compilation debug="true" targetFramework="4.6.1"/>
<httpRuntime requestValidationMode="2.0" maxRequestLength="2147483647" executionTimeout="36000"/>
<authentication mode="Forms">
<forms loginUrl="Login.aspx" name="PUBLISHERCOOKIE" protection="All" timeout="1440" path="/"/>

View File

@ -1,20 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="197F9A9A-480C-4CC3-B6B7-3A7D382DC3EB" Text="LHC System List(Process)" NavigateUrl="Transfer/LHCSystemList.aspx?Type=0">
<TreeNode id="197F9A9A-480C-4CC3-B6B7-3A7D382DC3EB" Text="工艺系统清单&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Process System List" NavigateUrl="Transfer/LHCSystemList.aspx?Type=0">
</TreeNode>
<TreeNode id="022428DC-FC99-4916-B8AF-6A9DC885DFAF" Text="LHC System List(Non-Process)" NavigateUrl="Transfer/LHCSystemList.aspx?Type=1"></TreeNode>
<TreeNode id="D94C1BA4-9DFD-4514-AE12-6F886C5D8C9B" Text="Piping" NavigateUrl="Transfer/Piping.aspx"></TreeNode>
<TreeNode id="982F746C-084C-445C-9AE8-8C37BDFE7994" Text="Static Equipment" NavigateUrl="Transfer/StaticEquipment.aspx"></TreeNode>
<TreeNode id="7E2FB5F9-FB99-4455-B68F-460F1F9A2676" Text="Rotating Equipment" NavigateUrl="Transfer/RotatingEquipment.aspx"></TreeNode>
<TreeNode id="88F51059-55B4-4CD5-A38C-36404E5029F6" Text="Instrumentation" NavigateUrl="Transfer/Instrumentation.aspx"></TreeNode>
<TreeNode id="296E75D2-192A-4D1F-8471-DD34263F8691" Text="Electrical" NavigateUrl="Transfer/Electrical.aspx"></TreeNode>
<TreeNode id="95C39F86-C060-452E-BA37-D891C466A39B" Text="Civil Structure" NavigateUrl="Transfer/CivilStructure.aspx"></TreeNode>
<TreeNode id="794E64E2-FDD2-4B7D-8408-F7FB06F9C92A" Text="Firefighting" NavigateUrl="Transfer/Firefighting.aspx"></TreeNode>
<TreeNode id="58FFBD80-ACB9-4830-A18A-E025D9600D94" Text="Telecom" NavigateUrl="Transfer/Telecom.aspx"></TreeNode>
<TreeNode id="95295BF7-FB51-480D-9902-6ADA4E8427FC" Text="Plumbing" NavigateUrl="Transfer/Plumbing.aspx"></TreeNode>
<TreeNode id="016903B1-3B86-4CF5-AFF8-FF8BE389BEE5" Text="Punchlist from" NavigateUrl="Transfer/PunchlistFrom.aspx"></TreeNode>
<TreeNode id="022428DC-FC99-4916-B8AF-6A9DC885DFAF" Text="非工艺系统清单&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Non-Process System List" NavigateUrl="Transfer/LHCSystemList.aspx?Type=1"></TreeNode>
<TreeNode id="D94C1BA4-9DFD-4514-AE12-6F886C5D8C9B" Text="管道&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Piping" NavigateUrl="Transfer/Piping.aspx"></TreeNode>
<TreeNode id="982F746C-084C-445C-9AE8-8C37BDFE7994" Text="静设备&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Static Equipment" NavigateUrl="Transfer/StaticEquipment.aspx"></TreeNode>
<TreeNode id="7E2FB5F9-FB99-4455-B68F-460F1F9A2676" Text="动设备&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Rotating Equipment" NavigateUrl="Transfer/RotatingEquipment.aspx"></TreeNode>
<TreeNode id="88F51059-55B4-4CD5-A38C-36404E5029F6" Text="仪表&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Instrumentation" NavigateUrl="Transfer/Instrumentation.aspx"></TreeNode>
<TreeNode id="296E75D2-192A-4D1F-8471-DD34263F8691" Text="电气&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Electrical" NavigateUrl="Transfer/Electrical.aspx"></TreeNode>
<TreeNode id="95C39F86-C060-452E-BA37-D891C466A39B" Text="土建/建筑/结构&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Civil Structure" NavigateUrl="Transfer/CivilStructure.aspx"></TreeNode>
<TreeNode id="794E64E2-FDD2-4B7D-8408-F7FB06F9C92A" Text="消防&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Firefighting" NavigateUrl="Transfer/Firefighting.aspx"></TreeNode>
<TreeNode id="58FFBD80-ACB9-4830-A18A-E025D9600D94" Text="电信&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Telecom" NavigateUrl="Transfer/Telecom.aspx"></TreeNode>
<TreeNode id="95295BF7-FB51-480D-9902-6ADA4E8427FC" Text="地管&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Plumbing" NavigateUrl="Transfer/Plumbing.aspx"></TreeNode>
<TreeNode id="016903B1-3B86-4CF5-AFF8-FF8BE389BEE5" Text="尾项管理&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;Punch List Form" NavigateUrl="Transfer/PunchlistFrom.aspx"></TreeNode>
<TreeNode id="3517DBE2-9728-4BA0-9EA5-AE2147DB883B" Text="移交图表" NavigateUrl=""><TreeNode id="2352E44F-BE12-4012-B43F-AAF649EDAC32" Text="Punchlist from完成统计表" NavigateUrl="Transfer/Chart/PunchlistFromChartNew.aspx"></TreeNode>
<TreeNode id="CB76462E-9444-4946-B787-ECB33C21E6D0" Text="Punchlist from分类表" NavigateUrl="Transfer/Chart/PunchlistFromSort.aspx"></TreeNode>
<TreeNode id="549DD0B6-05CB-4C75-B8F5-9AADDEDF399F" Text="Punchlist from进度跟踪表" NavigateUrl="Transfer/Chart/PunchlistFromProgress.aspx"></TreeNode>
<TreeNode id="E305689E-5D84-4C1A-BF67-85FA2D828115" Text="移交统计表" NavigateUrl="Transfer/Chart/Systemstatus.aspx"></TreeNode>
<TreeNode id="60838E30-4A46-4878-B299-C234900B10B7" Text="移交统计图表" NavigateUrl="Transfer/Chart/SystemstatusChart.aspx"></TreeNode>
<TreeNode id="25C13642-AE77-42E2-B0FB-32663B68F93F" Text="移交状态汇总表" NavigateUrl="Transfer/Chart/SystemStatusSummary.aspx"></TreeNode>
</TreeNode>
</Tree>

File diff suppressed because it is too large Load Diff

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress />
<IISExpressSSLPort />