Basf_FCL/FCL/FineUIPro.Web/Evaluation/EvaluationNew.aspx

260 lines
17 KiB
Plaintext
Raw Normal View History

2024-05-08 10:17:02 +08:00
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="EvaluationNew.aspx.cs" Inherits="FineUIPro.Web.Evaluation.EvaluationNew" %>
<!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>
.f-grid-row.color1,
.f-grid-row.color1 .f-icon,
.f-grid-row.color1 a {
background-color: #A9A9A9;
color: #fff;
}
2024-06-04 17:56:08 +08:00
.f-grid-row.color2,
.f-grid-row.color2 .f-icon,
.f-grid-row.color2 a {
background-color: red;
color: #fff;
}
2024-05-08 10:17:02 +08:00
.f-rate .f-rate-star.f-rate-star-half .f-rate-star-first .f-rate-star-icon, .f-rate .f-rate-star.f-rate-star-full
.f-rate-star-first .f-rate-star-icon, .f-rate .f-rate-star.f-rate-star-full .f-rate-star-second .f-rate-star-icon {
color: #cc0033;
}
.f-grid-cell.ycl .f-grid-cell-inner {
display: none;
}
</style>
<script src="../Scripts/jquery-3.6.4.js"></script>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" OnCustomEvent="PageManager1_CustomEvent" runat="server" AutoSizePanelID="Panel1" />
<f:Panel ID="Panel1" runat="server" ShowBorder="True" Layout="Region" ShowHeader="false"
BodyPadding="5">
<Items>
<f:Panel runat="server" ID="panelTopRegion" RegionPosition="Center"
Title="中间面板" ShowBorder="false" ShowHeader="false" Layout="VBox">
<Items>
<f:Grid ID="Grid1" CssClass="blockpanel" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="FO_NO,IsEvaluateType,EvaluateType,UserType" AllowCellEditing="true" ClicksToEdit="2" DataIDField="FO_NO"
PageSize="15" EnableRowSelectEvent="true" Height="300px" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick" OnRowCommand="Grid1_RowCommand" >
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:RadioButtonList ID="rdbUserType" runat="server" Width="120px" AutoPostBack="true" OnSelectedIndexChanged="rdbUserType_SelectedIndexChanged" ColumnNumber="2" EnableAjax="false">
<f:RadioItem Text="用户" Value="1" />
<f:RadioItem Text="部门" Value="2" />
</f:RadioButtonList>
<f:DropDownList ID="drpUser" runat="server" Label="Select User" EnableEdit="true" AutoPostBack="true" OnSelectedIndexChanged="drpUser_OnSelectedIndexChanged" Hidden="true"></f:DropDownList>
<f:DropDownList ID="drpContractNo" runat="server" Label="Select Contract_No" LabelWidth="150px" EnableEdit="true" Hidden="true"></f:DropDownList>
<f:Button ID="btnUndo" runat="server" Text="Undo Evaluation" OnClick="btnUndo_OnClick" Hidden="true"></f:Button>
<f:Button ID="btnAutoEvaluation" runat="server" Text="Auto Evaluation" OnClick="btnAutoEvaluation_OnClick" Hidden="true"></f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:HiddenField ID="hdFo" runat="server"></f:HiddenField>
<f:Button ID="BatchEvaluation" runat="server" OnClick="BatchEvaluation_Click" Text="评估批量提交"></f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField HeaderText="合同号<br/>Fo No." HeaderTextAlign="Center" EnableLock="true" Locked="true" Width="100px">
<ItemTemplate>
<asp:LinkButton runat="server" ID="LinkFoNo" OnClick="LinkFoNo_Click" CommandArgument='<%# Container.DataItemIndex%>' CommandName='<%#Eval("UserType") %>' Text='<%#Eval("FO_NO") %>'></asp:LinkButton>
<f:HiddenField runat="server" ID="hidisDepScore1"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore2"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore3"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore4"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore5"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore6"></f:HiddenField>
2024-06-04 18:14:30 +08:00
<f:HiddenField runat="server" Text="" ID="hidMaxScore1"></f:HiddenField>
2024-06-04 17:56:08 +08:00
<f:HiddenField runat="server" Text="" ID="hidMaxScore2"></f:HiddenField>
2024-06-07 15:13:19 +08:00
<f:HiddenField runat="server" Text="" ID="hidMsg"></f:HiddenField>
2024-05-08 10:17:02 +08:00
</ItemTemplate>
</f:TemplateField>
<f:TemplateField HeaderText="承包商<br/>Contractor" HeaderTextAlign="Center" Width="200px">
<ItemTemplate>
<asp:Label runat="server" ID="lblContractor"></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="160px" ColumnID="Discipline" DataField="Discipline"
FieldType="String" HeaderText="专业<br/>Discipline" HeaderTextAlign="Center">
</f:RenderField>
<%--用户--%>
<f:GroupField HeaderText="User(Requisitioner) 用户(请购人与相关工程师线下讨论后再进行评分)" HeaderTextAlign="Center" HeaderToolTip="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<Columns>
<f:GroupField HeaderText="工作准备" HeaderTextAlign="Center">
<Columns>
2024-06-04 18:14:30 +08:00
2024-05-08 10:17:02 +08:00
<f:RenderField Width="150px" ColumnID="Score1" DataField="Score1" FieldType="Float" HeaderText="Preparation" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="工作表现" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="150px" ColumnID="Score2" DataField="Score2" FieldType="Float" HeaderText="Performance" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="EHSS管理" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="150px" ColumnID="Score3" DataField="Score3" FieldType="Float" HeaderText="EHSS" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="质量控制" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="150px" ColumnID="Score4" DataField="Score4" FieldType="Float" HeaderText="Quality Control" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="时间管理" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="150px" ColumnID="Score5" DataField="Score5" FieldType="Float" HeaderText="Timeline Management" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="文档管理" HeaderTextAlign="Center">
<Columns>
<f:RenderField Width="150px" ColumnID="Score6" DataField="Score6" FieldType="Float" HeaderText="Documentation" RendererFunction="renderRateUser" />
</Columns>
</f:GroupField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="附件上传" HeaderTextAlign="Center" ID="wjsc">
<Columns>
<f:WindowField ColumnID="myWindowField" TextAlign="Center" Width="160px" WindowID="Window1" HeaderText="Upload Files"
Icon="ApplicationGo" ToolTip="Upload Files" DataTextFormatString="{0}" DataIFrameUrlFields="FO_NO,IsEvaluateType"
DataIFrameUrlFormatString="EvaluationUpload.aspx?fo={0}&evaluatetype={1}" DataWindowTitleField="Name"
DataWindowTitleFormatString="Upload Files - {0}" />
</Columns>
</f:GroupField>
<f:GroupField HeaderText="评估" HeaderTextAlign="Center">
<Columns>
<f:LinkButtonField Width="100px" ConfirmTarget="Top" CommandName="pg" Icon="Add" HeaderText="Evaluate" Text="评估" />
</Columns>
</f:GroupField>
<f:RenderField Width="10px" ColumnID="IsEvaluateType" DataField="IsEvaluateType" SortField="IsEvaluateType" FieldType="Int" HeaderTextAlign="Center" Hidden="true">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
<%--SES列表--%>
<f:Panel runat="server" ID="panelBottomRegion" RegionPosition="Bottom" RegionSplit="true" RegionSplitWidth="20px" EnableCollapse="true" Height="260px"
Title="底部面板" ShowBorder="false" ShowHeader="false" Layout="Fit">
<Items>
<f:Grid ID="Grid2" ShowBorder="true" ShowHeader="false" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="SES_No" AllowCellEditing="true" ClicksToEdit="2" DataIDField="SES_No"
2024-06-04 17:56:08 +08:00
PageSize="15" EnableRowSelectEvent="true" Height="200px" OnRowDataBound="Grid2_RowDataBound">
2024-05-08 10:17:02 +08:00
<Columns>
<f:RenderField ColumnID="SES_No" DataField="SES_No" SortField="SES_No"
FieldType="String" HeaderText="SES No." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="Short_Descrption" DataField="Short_Descrption" Width="550px" SortField="Short_Descrption"
FieldType="String" HeaderText="Description" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="Start_Date" DataField="Start_Date" Width="120px" SortField="Start_Date"
FieldType="Date" Renderer="Date" HeaderText="Start Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="End_Date" DataField="End_Date" Width="120px" SortField="End_Date"
FieldType="Date" Renderer="Date" HeaderText="End Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="TECO_Date" DataField="TECO_Date" Width="120px" SortField="TECO_Date"
FieldType="Date" Renderer="Date" HeaderText="TECO Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="Claim_sheets_receive" DataField="Claim_sheets_receive" Width="180px" SortField="Claim_sheets_receive"
FieldType="Date" Renderer="Date" HeaderText="Claim Sheet Receive" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="Requisitioner" DataField="Requisitioner" Width="200px" SortField="Requisitioner"
FieldType="String" HeaderText="Requisitioner" HeaderTextAlign="Center">
</f:RenderField>
2024-06-04 17:56:08 +08:00
<f:TemplateField ColumnID="ViolationDegree" Width="110px" HeaderText="违章程度"
HeaderTextAlign="Center" TextAlign="Center" SortField="ViolationDegree">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# ConvertViolationDegree(Eval("ViolationDegree")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
2024-05-08 10:17:02 +08:00
</Columns>
</f:Grid>
</Items>
</f:Panel>
</Items>
</f:Panel>
<f:Window ID="Window1" Title="附件上传" Hidden="true" EnableIFrame="true" EnableMaximize="false"
Target="Parent" EnableResize="false" runat="server" OnClose="Window1_Close" IsModal="true"
Width="650px" Height="500px" ShowHeader="true">
</f:Window>
</form>
<script type="text/javascript">
var grid1ClientID = '<%= Grid1.ClientID %>';
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
//用户评分事件
function renderRateUser(value, row) {
var evaltype = row.rowValue["IsEvaluateType"];
2024-06-03 18:43:21 +08:00
var html= F.rateHtml(value, {
allowClear:true,
2024-05-08 10:17:02 +08:00
readonly: evaltype == 1 ? true : false,
allowHalf: true,
textVisible: false
});
2024-06-03 18:43:21 +08:00
return html;
2024-05-08 10:17:02 +08:00
}
F.ready(function () {
var grid1 = F(grid1ClientID);
// 注册评分事件
F.rateEvents(grid1.el, function (event, value) {
var target = $(event.target);
var cellEl = target.closest('.f-grid-cell');
var rowId = grid1.getRowId(cellEl);
2024-06-04 18:16:23 +08:00
console.log(rowId);
2024-05-08 10:17:02 +08:00
var columnId = grid1.getColumnId(cellEl);
2024-06-03 18:43:21 +08:00
var columnName = grid1.getColumn(columnId).columnId;
2024-06-07 15:13:19 +08:00
2024-06-03 18:43:21 +08:00
//获取控件值1
2024-06-04 18:14:30 +08:00
var maxScore1 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore1-inputEl").val();
2024-06-03 18:43:21 +08:00
//获取控件值2
2024-06-04 18:14:30 +08:00
var maxScore2 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore2-inputEl").val()
2024-06-07 15:13:19 +08:00
var hidMsg = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMsg-inputEl").val()
2024-06-04 17:56:08 +08:00
// 用户EHSS
if (columnName == "Score3" && value > parseFloat(maxScore1)) {
F.alert("最大只能评" + maxScore1 + "星");
2024-06-03 18:43:21 +08:00
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
2024-06-04 17:56:08 +08:00
// 部门安全监管
else if (columnName == "Score1" && value > parseFloat(maxScore2)) {
F.alert("最大只能评" + maxScore2 + "星");
2024-06-03 18:43:21 +08:00
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
2024-06-04 17:56:08 +08:00
2024-06-03 18:43:21 +08:00
else {
//更新单元格的值
grid1.updateCellValue(rowId, columnId, value);
}
2024-05-08 10:17:02 +08:00
});
2024-06-04 17:56:08 +08:00
2024-05-08 10:17:02 +08:00
});
2024-06-03 18:43:21 +08:00
2024-05-08 10:17:02 +08:00
</script>
</body>
</html>