260 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			260 lines
		
	
	
		
			16 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ManHoursActual.aspx.cs" Inherits="FineUIPro.Web.ManHours.ManHoursActual" %>
 | 
						||
 | 
						||
<!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>
 | 
						||
    <style type="text/css">
 | 
						||
        .customlabel span {
 | 
						||
            color: red;
 | 
						||
           font-weight: bold;
 | 
						||
        }
 | 
						||
      </style>
 | 
						||
</head>
 | 
						||
<body>
 | 
						||
    <form id="form1" runat="server">
 | 
						||
        <f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="Panel1" />
 | 
						||
        <f:Panel ID="Panel1" CssClass="blockpanel" Margin="20px" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
 | 
						||
            <Items>
 | 
						||
                <f:Panel runat="server" ID="panelCenterRegion" RegionPosition="Center" AutoScroll="true"
 | 
						||
                    Title="中间面板" ShowBorder="true" ShowHeader="false" BodyPadding="10px">
 | 
						||
                    <Toolbars>
 | 
						||
                        <f:Toolbar ID="Toolbar1" runat="server">
 | 
						||
                            <Items>
 | 
						||
                                <f:Button ID="btnNew" Text="Add" Icon="Add" EnablePostBack="false" runat="server" Hidden="true">
 | 
						||
                                </f:Button>
 | 
						||
                                <f:Button ID="btnDelete" Text="Delete" Icon="Delete" EnablePostBack="false" runat="server" Hidden="true">
 | 
						||
                                    <Listeners>
 | 
						||
                                        <f:Listener Event="click" Handler="onDeleteClick" />
 | 
						||
                                    </Listeners>
 | 
						||
                                </f:Button>
 | 
						||
                                <f:Button ID="btnSelect" runat="server" Text="Select Task" Icon="Find" OnClick="btnSelect_Click" Hidden="true"></f:Button>
 | 
						||
                                <f:DatePicker ID="txtMonth" runat="server" Label="Month" LabelAlign="Right" DateFormatString="yyyyMM" DisplayType="Month" ShowTodayButton="false" Width="250px" AutoPostBack="true" OnTextChanged="txtMonth_TextChanged"></f:DatePicker>
 | 
						||
                            </Items>
 | 
						||
                        </f:Toolbar>
 | 
						||
                    </Toolbars>
 | 
						||
                    <Items>
 | 
						||
                        <f:HiddenField runat="server" ID="hidsIdArr" />
 | 
						||
                        <f:HiddenField runat="server" ID="HiddenField1" />
 | 
						||
                        <f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="人工时实际计划" EnableCollapse="true"
 | 
						||
                            runat="server" BoxFlex="1" AllowCellEditing="true" EnableColumnLines="true"
 | 
						||
                            ClicksToEdit="1" AllowSorting="true" SortField="Hours" EnableRowDoubleClickEvent="true" EnableSummary="true" SummaryPosition="Bottom">
 | 
						||
                            <Columns>
 | 
						||
                                <f:RenderField Width="10px" ColumnID="EProjectId" DataField="EProjectId"
 | 
						||
                                    FieldType="String" HeaderText="EProjectId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ManHoursActualId" DataField="ManHoursActualId"
 | 
						||
                                    FieldType="String" HeaderText="ManHoursActualId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="200px" ColumnID="Type" DataField="Type" EnableFilter="true"
 | 
						||
                                    RendererFunction="renderddType"
 | 
						||
                                    SortField="Type" FieldType="String" HeaderText="Type" HeaderTextAlign="Center" TextAlign="Left">
 | 
						||
                                    <Editor>
 | 
						||
                                        <f:DropDownList ID="ddType" runat="server" Required="true" ShowRedStar="true" EnableEdit="true" ForceSelection="false" EnableGroup="true"></f:DropDownList>
 | 
						||
                                    </Editor>
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="200px" ColumnID="Account" DataField="Account"
 | 
						||
                                    FieldType="String" HeaderText="Account" HeaderTextAlign="Center">
 | 
						||
                                    <Editor>
 | 
						||
                                        <f:TextBox ID="txtAccount" Required="true" runat="server">
 | 
						||
                                        </f:TextBox>
 | 
						||
                                    </Editor>
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="600px" ColumnID="Description" DataField="Description"
 | 
						||
                                    FieldType="String" HeaderText="Description" HeaderTextAlign="Center" ExpandUnusedSpace="true">
 | 
						||
                                    <Editor>
 | 
						||
                                        <f:TextBox ID="txtDescription" Required="true" runat="server">
 | 
						||
                                        </f:TextBox>
 | 
						||
                                    </Editor>
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Hours" DataField="Hours"
 | 
						||
                                    FieldType="Float" HeaderText="Hours" HeaderTextAlign="Center">
 | 
						||
                                    <Editor>
 | 
						||
                                        <f:NumberBox ID="txtHours" runat="server" MinValue="0"></f:NumberBox>
 | 
						||
                                    </Editor>
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Month" DataField="Month" SortField="Month"
 | 
						||
                                    Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="Date" HeaderTextAlign="Center" >
 | 
						||
                                    <Editor>
 | 
						||
                                        <f:TextBox runat="server" ID="txttime" Readonly="true"></f:TextBox>
 | 
						||
                                        <%-- <f:DatePicker ID="DatePicker1" Required="true" runat="server">
 | 
						||
                                        </f:DatePicker>--%>
 | 
						||
                                    </Editor>
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Itype" DataField="Itype"
 | 
						||
                                    FieldType="String" HeaderText="Itype" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="DisciplineId" DataField="DisciplineId"
 | 
						||
                                    FieldType="String" HeaderText="DisciplineId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Discipline" DataField="Discipline"
 | 
						||
                                    FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="UserId" DataField="UserId"
 | 
						||
                                    FieldType="String" HeaderText="UserId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="UserName" DataField="UserName"
 | 
						||
                                    FieldType="String" HeaderText="UserName" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Roles" DataField="Roles"
 | 
						||
                                    FieldType="String" HeaderText="Roles" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ResourcePlanId" DataField="ResourcePlanId"
 | 
						||
                                    FieldType="String" HeaderText="ResourcePlanId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ManHoursPlanId" DataField="ManHoursPlanId"
 | 
						||
                                    FieldType="String" HeaderText="ManHoursPlanId" HeaderTextAlign="Center" Hidden="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                            </Columns>
 | 
						||
                            <Listeners>
 | 
						||
                                <f:Listener Event="afteredit" Handler="onGridAfterEdit" />
 | 
						||
                            </Listeners>
 | 
						||
                        </f:Grid>
 | 
						||
                    </Items>
 | 
						||
                </f:Panel>
 | 
						||
            </Items>
 | 
						||
            <Toolbars>
 | 
						||
                <f:Toolbar ID="Toolbar2" Position="Bottom" ToolbarAlign="Right" runat="server">
 | 
						||
                    <Items>
 | 
						||
                        <f:HiddenField runat="server" ID="hdItemsString">
 | 
						||
                        </f:HiddenField>
 | 
						||
                        <f:Label runat="server" CssClass="customlabel" Text="计划内:点击 Select Task 按钮,计划外:点击 Add 按钮"></f:Label>
 | 
						||
                        <f:ToolbarFill runat="server"></f:ToolbarFill>
 | 
						||
                        <f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="Save" ToolTip="Save"
 | 
						||
                            OnClick="btnSave_Click" Hidden="true">
 | 
						||
                        </f:Button>
 | 
						||
                        <f:Button ID="btnClose" EnablePostBack="false" ToolTip="Close" Text="Close" runat="server" Icon="SystemClose">
 | 
						||
                        </f:Button>
 | 
						||
                    </Items>
 | 
						||
                </f:Toolbar>
 | 
						||
            </Toolbars>
 | 
						||
        </f:Panel>
 | 
						||
        <f:Window ID="Window1" Title="Select Task" Hidden="true" EnableIFrame="true" EnableMaximize="true"
 | 
						||
            Target="Parent" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
 | 
						||
            Width="1300px" Height="680px">
 | 
						||
        </f:Window>
 | 
						||
 | 
						||
        <%--<f:Window ID="Window1" Title="Pop-up window" Hidden="true" EnableIFrame="false" EnableMaximize="false"
 | 
						||
            Target="Self"  EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
 | 
						||
            Width="1000px" Height="540px">
 | 
						||
            <Items>
 | 
						||
                
 | 
						||
                <f:Panel runat="server" ID="panel2" RegionPosition="Center" AutoScroll="true"
 | 
						||
                    Title="中间面板" ShowBorder="true" ShowHeader="false" BodyPadding="10px">
 | 
						||
                    <Items>
 | 
						||
                        <f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" Title="人工时计划" EnableCollapse="true"
 | 
						||
                            AllowColumnLocking="true" EnableColumnLines="true" EnableCheckBoxSelect="true"
 | 
						||
                            EnableTextSelection="True"
 | 
						||
                            runat="server" BoxFlex="1"  AllowCellEditing="true"
 | 
						||
                            ClicksToEdit="2"  AllowSorting="true" SortField="ManHours" AllowPaging="false" IsDatabasePaging="false">
 | 
						||
                           <Toolbars>
 | 
						||
                               <f:Toolbar ID="Toolbar4" runat="server">
 | 
						||
                                   <Items>
 | 
						||
                                         <f:DropDownList ID="drpJobNo" runat="server" AutoPostBack="true" OnSelectedIndexChanged="drpJobNo_SelectedIndexChanged"></f:DropDownList>
 | 
						||
                                   </Items>
 | 
						||
                               </f:Toolbar>
 | 
						||
                           </Toolbars>
 | 
						||
                             <Columns>
 | 
						||
                                <f:TemplateField Width="50px" TextAlign="Center">
 | 
						||
                                    <ItemTemplate>
 | 
						||
                                        <asp:Label ID="Label1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
 | 
						||
                                    </ItemTemplate>
 | 
						||
                                </f:TemplateField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ProjectControl_JobNo" DataField="ProjectControl_JobNo" EnableFilter="true"
 | 
						||
                                    SortField="ProjectControl_JobNo" FieldType="String" HeaderText="Job No." HeaderTextAlign="Center" TextAlign="Left">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="Discipline" DataField="Discipline"
 | 
						||
                                    FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="EngineerName" DataField="EngineerName"
 | 
						||
                                    FieldType="String" HeaderText="EngineerName" HeaderTextAlign="Center">
 | 
						||
                                </f:RenderField>
 | 
						||
                                  <f:RenderField Width="120px" ColumnID="Account" DataField="Account"
 | 
						||
                                    FieldType="String" HeaderText="Account" HeaderTextAlign="Center">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ManHours" DataField="ManHours"
 | 
						||
                                    FieldType="String" HeaderText="ManHours" HeaderTextAlign="Center">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="250px" ColumnID="ProjectControl_JobTitle" DataField="ProjectControl_JobTitle" SortField="ProjectControl_JobTitle"
 | 
						||
                                    FieldType="String" HeaderText="Job Title" HeaderTextAlign="Center" ExpandUnusedSpace="true">
 | 
						||
                                </f:RenderField>
 | 
						||
                                <f:RenderField Width="120px" ColumnID="ProjectControl_BUCode" DataField="ProjectControl_BUCode"
 | 
						||
                                    FieldType="String" HeaderText="Bu.Code" HeaderTextAlign="Center">
 | 
						||
                                </f:RenderField>
 | 
						||
                            </Columns>
 | 
						||
                        </f:Grid>
 | 
						||
                    </Items>
 | 
						||
                </f:Panel>
 | 
						||
            </Items>
 | 
						||
            <Toolbars>
 | 
						||
                <f:Toolbar ID="Toolbar3" Position="Bottom" ToolbarAlign="Right" runat="server">
 | 
						||
                    <Items>
 | 
						||
                        <f:Button ID="Button1" Icon="SystemSave" runat="server" ToolTip="Save" ValidateForms="SimpleForm1" OnClick="Button1_Click">
 | 
						||
                        </f:Button>
 | 
						||
                    </Items>
 | 
						||
                </f:Toolbar>
 | 
						||
            </Toolbars>
 | 
						||
        </f:Window>--%>
 | 
						||
    </form>
 | 
						||
    <script type="text/javascript">
 | 
						||
        var grid1ClientID = '<%= Grid1.ClientID %>';
 | 
						||
 | 
						||
        // 同时只能选中一项
 | 
						||
        function onCheckBoxListChange(event, checkbox, isChecked) {
 | 
						||
            var me = this;
 | 
						||
            if (isChecked) {
 | 
						||
                me.setValue(checkbox.getInputValue());
 | 
						||
            }
 | 
						||
            __doPostBack('', 'CheckBoxList1Change');
 | 
						||
        }
 | 
						||
 | 
						||
        var ddType = '<%= ddType.ClientID %>';
 | 
						||
        function renderddType(value) {
 | 
						||
 | 
						||
            return F(ddType).getTextByValue(value);
 | 
						||
        }
 | 
						||
        var windowClientID = '<%= Window1.ClientID %>';
 | 
						||
        function onEditButtonClick(event) {
 | 
						||
            F(windowClientID).show();
 | 
						||
        }
 | 
						||
 | 
						||
        function updateSummary() {
 | 
						||
            var me = F(grid1ClientID), hoursTotal = 0;
 | 
						||
            me.getRowEls().each(function (index, tr) {
 | 
						||
                hoursTotal += me.getCellValue(tr, 'Hours');
 | 
						||
            });
 | 
						||
            // 第三个参数 true,强制更新,不显示左上角的更改标识
 | 
						||
            me.updateSummaryCellValue('Hours', "∑Sum:" + hoursTotal, true);
 | 
						||
        }
 | 
						||
 | 
						||
        function onGridAfterEdit(event, value, params) {
 | 
						||
            var grid = F(grid1ClientID);
 | 
						||
            var type = grid.getCellValue(params.rowId, 'Type');
 | 
						||
            if (type == "T12_Leave" || type == "T13_Sick Leave") {
 | 
						||
                grid.updateCellValue(params.rowId, 'Account', '');
 | 
						||
            }
 | 
						||
            updateSummary();
 | 
						||
        }
 | 
						||
 | 
						||
        // 点击删除按钮
 | 
						||
        function onDeleteClick() {
 | 
						||
            var grid1 = F(grid1ClientID);
 | 
						||
            if (!grid1.hasSelection()) {
 | 
						||
                F.alert('请至少选择一项!');
 | 
						||
                return false;
 | 
						||
            }
 | 
						||
            F.confirm({
 | 
						||
                message: '删除选中行?',
 | 
						||
                ok: function () {
 | 
						||
                    grid1.deleteSelectedRows();
 | 
						||
                    // 删除行后,要记得更新合计行
 | 
						||
                    updateSummary();
 | 
						||
                }
 | 
						||
            });
 | 
						||
        }
 | 
						||
    </script>
 | 
						||
</body>
 | 
						||
</html>
 |