CNCEC_SUBQHSE_WUHUAN/SGGL/FineUIPro.Web/TestRun/Report/ScheduleSetUp.aspx

318 lines
23 KiB
Plaintext
Raw Normal View History

2024-02-08 18:10:24 +08:00
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ScheduleSetUp.aspx.cs" Inherits="FineUIPro.Web.TestRun.Report.ScheduleSetUp" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>子系统工作包管理</title>
<style>
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" ShowBorder="false" ShowHeader="false" Layout="Region">
<Items>
<f:Panel runat="server" ID="panelCenterRegion" RegionPosition="Center" ShowBorder="true"
Layout="VBox" ShowHeader="false" BodyPadding="5px" IconFont="PlusCircle" Title="预试车/试车数据设置"
TitleToolTip="预试车/试车数据设置" AutoScroll="true">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<Items>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Form ID="SimpleForm1" ShowBorder="true" ShowHeader="false" AutoScroll="true" BodyPadding="10px"
runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow runat="server" ID="zxtsc">
<Items>
<f:TabStrip ID="TabStrip1" IsFluid="true"
AutoPostBack="true" OnTabIndexChanged="TabStrip1_TabIndexChanged"
ShowBorder="true" ActiveTabIndex="1" runat="server">
<Tabs>
<f:Tab Title="预试车数据设置" BodyPadding="10px" Layout="Fit" runat="server">
<Items>
2024-03-11 09:46:11 +08:00
<f:Grid Height="550px" ID="GridYsc" ShowBorder="true" ClicksToEdit="1" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="ScheduleId" DataKeyNames="ScheduleId,WorkPackId" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowPaging="true" IsDatabasePaging="true" PageSize="10" AllowFilters="true" EnableSummary="true" SummaryPosition="Flow">
2024-02-08 18:10:24 +08:00
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:Button ID="btnYscReset" Text="重置" ToolTip="重置" ConfirmText="重置后数据会全部被清空,是否确认?" Icon="Reload" runat="server" OnClick="btnYscReset_Click"></f:Button>
2024-03-11 09:46:11 +08:00
<f:Button ID="btnYscSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClientClick="if(!isYscValid()){return false;}" OnClick="btnYscSave_Click"></f:Button>
<f:ToolbarFill ID="ToolbarFill" runat="server"></f:ToolbarFill>
<f:Button ID="btnYscExport" runat="server" Icon="ApplicationGo" Text="导出" ToolTip="导出" OnClick="btnYscExport_Click" DisableControlBeforePostBack="false" EnableAjax="false"></f:Button>
2024-02-08 18:10:24 +08:00
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField HeaderText="工作包名称" ColumnID="WorkPackName" DataField="WorkPackName" FieldType="String" HeaderTextAlign="Center" TextAlign="Center">
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="全部数量" ColumnID="AllNum" DataField="AllNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
2024-02-08 18:10:24 +08:00
<Editor>
2024-03-11 09:46:11 +08:00
<f:NumberBox NoNegative="true" runat="server" ID="txtAllNum" Required="true"></f:NumberBox>
2024-02-08 18:10:24 +08:00
</Editor>
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="进行中数量" ColumnID="ProgressNum" DataField="ProgressNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center">
2024-02-08 18:10:24 +08:00
<Editor>
2024-03-11 09:46:11 +08:00
<f:NumberBox NoNegative="true" runat="server" ID="txtProgressNum" Required="true"></f:NumberBox>
2024-02-08 18:10:24 +08:00
</Editor>
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="已完成数量" ColumnID="CompleteNum" DataField="CompleteNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center">
2024-02-08 18:10:24 +08:00
<Editor>
2024-03-11 09:46:11 +08:00
<f:NumberBox NoNegative="true" runat="server" ID="txtCompleteNum" Required="true"></f:NumberBox>
2024-02-08 18:10:24 +08:00
</Editor>
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
2024-03-11 09:46:11 +08:00
<f:Listener Event="afteredit" Handler="onGridYscAfterEdit" />
2024-02-08 18:10:24 +08:00
</Listeners>
</f:Grid>
</Items>
</f:Tab>
<f:Tab Title="试车数据设置" BodyPadding="10px" runat="server">
<Items>
2024-03-11 09:46:11 +08:00
<f:Grid Height="550px" ID="GridSc" ClicksToEdit="1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="ScheduleId" DataKeyNames="ScheduleId,WorkPackId" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowPaging="true" IsDatabasePaging="true" PageSize="10" AllowFilters="true" EnableSummary="true" SummaryPosition="Flow">
2024-02-08 18:10:24 +08:00
<Toolbars>
<f:Toolbar ID="Toolbar3" runat="server">
<Items>
<f:Button ID="btnScReset" Text="重置" ToolTip="重置" ConfirmText="重置后数据会全部被清空,是否确认?" Icon="Reload" runat="server" OnClick="btnScReset_Click"></f:Button>
2024-03-11 09:46:11 +08:00
<f:Button ID="btnScSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClientClick="if(!isScValid()){return false;}" OnClick="btnScSave_Click"></f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnScExport" runat="server" Icon="ApplicationGo" Text="导出" ToolTip="导出" OnClick="btnScExport_Click" DisableControlBeforePostBack="false" EnableAjax="false"></f:Button>
2024-02-08 18:10:24 +08:00
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="100px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField HeaderText="工作包名称" ColumnID="WorkPackName" DataField="WorkPackName" FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="150px">
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="全部数量" ColumnID="AllNum" DataField="AllNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
2024-02-08 18:10:24 +08:00
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="txtAllNum1"></f:NumberBox>
</Editor>
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="进行中数量" ColumnID="ProgressNum" DataField="ProgressNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
2024-02-08 18:10:24 +08:00
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="txtProgressNum1"></f:NumberBox>
</Editor>
</f:RenderField>
2024-03-11 09:46:11 +08:00
<f:RenderField HeaderText="已完成数量" ColumnID="CompleteNum" DataField="CompleteNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
2024-02-08 18:10:24 +08:00
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="txtCompleteNum1"></f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
2024-03-11 09:46:11 +08:00
<f:Listener Event="afteredit" Handler="onGridScAfterEdit" />
2024-02-08 18:10:24 +08:00
</Listeners>
</f:Grid>
</Items>
</f:Tab>
2024-03-11 09:46:11 +08:00
<f:Tab Title="三查四定进度" BodyPadding="10px" runat="server">
<Items>
<f:Grid Height="550px" ID="GridScsd" ClicksToEdit="1" ShowBorder="true" ShowHeader="true" EnableCollapse="true" runat="server" DataIDField="ScheduleId" DataKeyNames="ScheduleId,LevelName" AllowSorting="true" SortField="Sort" SortDirection="ASC" EnableColumnLines="true" AllowCellEditing="true" EnableMultiSelect="false" AllowPaging="true" IsDatabasePaging="true" PageSize="10" AllowFilters="true" EnableSummary="true" SummaryPosition="Flow">
<Toolbars>
<f:Toolbar ID="Toolbar4" runat="server">
<Items>
<f:Button ID="btnScsdReset" Text="重置" ToolTip="重置" ConfirmText="重置后数据会全部被清空,是否确认?" Icon="Reload" runat="server" OnClick="btnScsdReset_Click"></f:Button>
<f:Button ID="btnScsdSave" Text="保存" ToolTip="保存" Icon="FilmSave" runat="server" OnClientClick="if(!isScsdValid()){return false;}" OnClick="btnScsdSave_Click"></f:Button>
<f:ToolbarFill ID="ToolbarFill2" runat="server"></f:ToolbarFill>
<f:Button ID="btnScsdExport" runat="server" Icon="ApplicationGo" Text="导出" ToolTip="导出" OnClick="btnScsdExport_Click" DisableControlBeforePostBack="false" EnableAjax="false"></f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="100px" HeaderTextAlign="Center" TextAlign="Center" />
<f:RenderField HeaderText="类别名称" ColumnID="LevelName" DataField="LevelName" FieldType="String" HeaderTextAlign="Center" TextAlign="Center" Width="150px">
</f:RenderField>
<f:RenderField HeaderText="全部数量" ColumnID="AllNum" DataField="AllNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="NumberBox1"></f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField HeaderText="进行中数量" ColumnID="ProgressNum" DataField="ProgressNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="NumberBox2"></f:NumberBox>
</Editor>
</f:RenderField>
<f:RenderField HeaderText="已完成数量" ColumnID="CompleteNum" DataField="CompleteNum" FieldType="Int" HeaderTextAlign="Center" TextAlign="Center" Width="100px">
<Editor>
<f:NumberBox NoNegative="true" runat="server" ID="NumberBox3"></f:NumberBox>
</Editor>
</f:RenderField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
<f:Listener Event="afteredit" Handler="onGridScsdAfterEdit" />
</Listeners>
</f:Grid>
</Items>
</f:Tab>
2024-02-08 18:10:24 +08:00
</Tabs>
</f:TabStrip>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:Panel>
</Items>
</f:Panel>
</form>
<script type="text/javascript">
// 返回false来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
2024-03-11 09:46:11 +08:00
//预试车验证
function isYscValid() {
var gridysc = F('<%= GridYsc.ClientID %>');
var valid = true, modifiedData = gridysc.getMergedData();//gridysc.getModifiedData();
$.each(modifiedData, function (index, rowData) {
var allNum = parseInt(rowData.values['AllNum']);
var progressNum = parseInt(rowData.values['ProgressNum']);
var completeNum = parseInt(rowData.values['CompleteNum']);
var workPackName = rowData.values['WorkPackName'];
if (allNum != (progressNum + completeNum)) {
F.alert({
message: '工作包(' + workPackName + ')全部数量不等于进行中数量加已完成数量!',
ok: function () {
grid1.startEdit(rowData.id, 'AllNum');
}
});
valid = false;
return false; // break
}
});
return valid;
}
//预试车合计
function onGridYscAfterEdit(event, value, params) {
var me = F('<%= GridYsc.ClientID %>');
var allNumTotal = 0;
var progressNumTotal = 0;
var completeNumTotal = 0;
me.getRowEls().each(function (index, tr) {
debugger;
allNumTotal += me.getCellValue(tr, 'AllNum');
progressNumTotal += me.getCellValue(tr, 'ProgressNum');
completeNumTotal += me.getCellValue(tr, 'CompleteNum');
});
// 第三个参数 true强制更新不显示左上角的更改标识
me.updateSummaryCellValue('AllNum', allNumTotal, true);
me.updateSummaryCellValue('ProgressNum', progressNumTotal, true);
me.updateSummaryCellValue('CompleteNum', completeNumTotal, true);
}
//试车验证
function isScValid() {
var gridSc = F('<%= GridSc.ClientID %>');
var valid = true, modifiedData = gridSc.getMergedData();
$.each(modifiedData, function (index, rowData) {
var allNum = parseInt(rowData.values['AllNum']);
var progressNum = parseInt(rowData.values['ProgressNum']);
var completeNum = parseInt(rowData.values['CompleteNum']);
var workPackName = rowData.values['WorkPackName'];
if (allNum != (progressNum + completeNum)) {
F.alert({
message: '工作包(' + workPackName + ')全部数量不等于进行中数量加已完成数量!',
ok: function () {
grid1.startEdit(rowData.id, 'AllNum');
}
});
valid = false;
return false; // break
}
});
return valid;
}
//试车合计
function onGridScAfterEdit(event, value, params) {
var me = F('<%= GridSc.ClientID %>');
var allNumTotal = 0;
var progressNumTotal = 0;
var completeNumTotal = 0;
me.getRowEls().each(function (index, tr) {
debugger;
allNumTotal += me.getCellValue(tr, 'AllNum');
progressNumTotal += me.getCellValue(tr, 'ProgressNum');
completeNumTotal += me.getCellValue(tr, 'CompleteNum');
});
// 第三个参数 true强制更新不显示左上角的更改标识
me.updateSummaryCellValue('AllNum', allNumTotal, true);
me.updateSummaryCellValue('ProgressNum', progressNumTotal, true);
me.updateSummaryCellValue('CompleteNum', completeNumTotal, true);
}
//三查四定验证
function isScsdValid() {
var gridyScsd = F('<%= GridScsd.ClientID %>');
var valid = true, modifiedData = gridyScsd.getMergedData();
$.each(modifiedData, function (index, rowData) {
var allNum = parseInt(rowData.values['AllNum']);
var progressNum = parseInt(rowData.values['ProgressNum']);
var completeNum = parseInt(rowData.values['CompleteNum']);
var levelName = rowData.values['LevelName'];
if (allNum != (progressNum + completeNum)) {
F.alert({
message: '类别(' + levelName + ')全部数量不等于进行中数量加已完成数量!',
ok: function () {
grid1.startEdit(rowData.id, 'AllNum');
}
});
valid = false;
return false; // break
}
});
return valid;
}
//三查四定合计
function onGridScsdAfterEdit(event, value, params) {
var me = F('<%= GridScsd.ClientID %>');
var allNumTotal = 0;
var progressNumTotal = 0;
var completeNumTotal = 0;
me.getRowEls().each(function (index, tr) {
debugger;
allNumTotal += me.getCellValue(tr, 'AllNum');
progressNumTotal += me.getCellValue(tr, 'ProgressNum');
completeNumTotal += me.getCellValue(tr, 'CompleteNum');
});
// 第三个参数 true强制更新不显示左上角的更改标识
me.updateSummaryCellValue('AllNum', allNumTotal, true);
me.updateSummaryCellValue('ProgressNum', progressNumTotal, true);
me.updateSummaryCellValue('CompleteNum', completeNumTotal, true);
}
2024-02-08 18:10:24 +08:00
</script>
</body>
</html>