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

507 lines
32 KiB
Plaintext

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Evaluation.aspx.cs" Inherits="FineUIPro.Web.Evaluation.Evaluation" %>
<!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-cell.f-grid-cell-ProjectName .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
.f-grid-row.color1,
.f-grid-row.color1 .f-icon,
.f-grid-row.color1 a {
background-color: #A9A9A9;
color: #fff;
}
body, li, p, ul {
margin: 0;
padding: 0;
}
ul, li, ol {
list-style: none;
}
/* 重置文本格式元素 */
a {
text-decoration: none;
cursor: pointer;
color: #333333;
font-size: 14px;
}
a:hover {
text-decoration: none;
}
.clearfix::after {
display: block;
content: '';
height: 0;
overflow: hidden;
clear: both;
}
/*星星样式*/
.content {
width: 600px;
margin: 0 auto;
padding-top: 20px;
}
.title {
font-size: 14px;
background: #dfdfdf;
padding: 10px;
margin-bottom: 10px;
}
.block {
width: 100%;
margin: 0 0 20px 0;
padding-top: 10px;
padding-right: 10px;
line-height: 21px;
}
.block .star_score {
float: left;
}
.star_list {
height: 21px;
margin: 50px;
line-height: 21px;
}
.blockpattitude {
line-height: 21px;
display: inline-block;
}
.block p span {
color: #C00;
font-size: 16px;
font-family: Georgia, "Times New Roman", Times, serif;
}
.star_score {
background: url(../Images/stark2.png);
width: 160px;
height: 21px;
position: relative;
}
.star_score a {
height: 21px;
display: block;
text-indent: -999em;
position: absolute;
left: 0;
}
.star_score a:hover {
background: url(../Images/stars2.png);
left: 0;
}
.star_score a.clibg {
background: url(../Images/stars2.png);
left: 0;
}
.start .star_score {
background: url(../Images/starky.png);
}
.start .star_score a:hover {
background: url(../Images/starsy.png);
left: 0;
}
.start .star_score a.clibg {
background: url(../Images/starsy.png);
left: 0;
}
/*星星样式*/
.show_number {
/*padding-left: 50px;
padding-top: 20px;*/
}
.show_number li {
/*width: 240px;
border: 1px solid #ccc;*/
padding: 10px;
margin-right: 5px;
margin-bottom: 20px;
}
.atar_Show {
background: url(../Images/stark2.png);
width: 160px;
height: 21px;
position: relative;
float: left;
}
.atar_Show p {
background: url(../Images/stars2.png);
left: 0;
height: 21px;
width: 134px;
}
.show_number li span {
display: inline-block;
line-height: 21px;
}
</style>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
<script src="../Scripts/jquery-3.7.1.min.js"></script>
<script src="../Scripts/layer/layer.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="true" EnableCollapse="true" runat="server"
BoxFlex="1" DataKeyNames="ConGuid" AllowCellEditing="true" ClicksToEdit="2" DataIDField="ConGuid"
PageSize="15" AllowColumnLocking="true" EnableRowSelectEvent="true" Height="300px" EnableRowClickEvent="true" OnRowClick="Grid1_RowClick">
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server">
<Items>
<f:RadioButtonList ID="rdbUserType" runat="server" Width="160px" AutoPostBack="true" OnSelectedIndexChanged="rdbUserType_SelectedIndexChanged" ColumnNumber="2" EnableAjax="false">
<f:RadioItem Text="用户" Value="1" />
<f:RadioItem Text="部门" Value="2" />
</f:RadioButtonList>
<f:HiddenField ID="hdFo" runat="server"></f:HiddenField>
<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>
</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="hidUserType" Text='<%#Eval("UserType") %>'></f:HiddenField>
<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>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField HeaderText="承包商<br/>Contractor" HeaderTextAlign="Center" Width="160px">
<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">
<Columns>
<f:GroupField HeaderText="工作准备" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="Preparation" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score1" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="startone<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score1") %>'></p>
</div>
<span class="fenshu" id="spone<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="工作表现" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="Performance" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score2" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="starttwo<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score2") %>'></p>
</div>
<span class="fenshu" id="sptwo<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="EHSS管理" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="EHSS" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score3" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="startthree<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score3") %>'></p>
</div>
<span class="fenshu" id="spthree<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="质量控制" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="Quality Control" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score4" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="startfour<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score4") %>'></p>
</div>
<span class="fenshu" id="spfour<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="时间管理" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="Timeline Management" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score5" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="startfive<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score5") %>'></p>
</div>
<span class="fenshu" id="spfive<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="文档管理" HeaderTextAlign="Center">
<Columns>
<f:TemplateField HeaderText="Documentation" HeaderTextAlign="Center" Width="170px">
<ItemTemplate>
<div runat="server" id="score6" title="10分 安全表现卓越 8分 安全表现较好无违章 6分 安全表现可接受有一般违章 4分 安全表现一般有严重违章 2分 安全表现差有零容忍违章 0分 安全表现非常差发生严重事故或违法行为">
<div isevaluatetype='<%#Eval("IsEvaluateType") %>' evaluatetype='<%#Eval("EvaluateType") %>' id="startsix<%# Container.DataItemIndex + 1%>" class="<%# Eval("IsEvaluateType").ToString() == "1" ? "show_number clearfix" : "block clearfix" %>">
<div class="<%# Eval("IsEvaluateType").ToString() == "1" ? "atar_Show" : "star_score" %>">
<p class="<%# Eval("IsEvaluateType").ToString() == "1" ? "blockpattitude" : "" %>" tip='<%#Eval("Score6") %>'></p>
</div>
<span class="fenshu" id="spsix<%# Container.DataItemIndex + 1%>"></span>
</div>
</div>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
</Columns>
</f:GroupField>
<f:GroupField HeaderText="附件上传" HeaderTextAlign="Center" ID="wjsc">
<Columns>
<f:WindowField ColumnID="myWindowField" TextAlign="Center" Width="90px" 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" ID="pg">
<Columns>
<f:TemplateField HeaderText="Evaluate" HeaderTextAlign="Center" Width="95px">
<ItemTemplate>
<asp:Button runat="server" ID="btnSave" Text="评估" CommandName="save" CommandArgument='<%# Container.DataItemIndex%>' cs='<%# Container.DataItemIndex + 1%>' fono='<%#Eval("FO_NO") %>' isevaluatetype='<%#Eval("IsEvaluateType") %>' OnClick="btnSave_Click" OnClientClick="return btnSave(this)" evaluatetype='<%#Eval("EvaluateType") %>' />
<f:HiddenField runat="server" ID="hidFoNo" Text='<%#Eval("FO_NO") %>'></f:HiddenField>
<f:HiddenField runat="server" ID="hidIsEvaluateType" Text='<%#Eval("IsEvaluateType") %>'></f:HiddenField>
<f:HiddenField runat="server" ID="hidEvaluateType" Text='<%#Eval("EvaluateType") %>'></f:HiddenField>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:GroupField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
<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"
PageSize="15" EnableRowSelectEvent="true" Height="200px">
<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"
FieldType="String" HeaderText="Short Descrption" 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>
<f:RenderField Width="200px" ColumnID="SES_No" DataField="SES_No" FieldType="String" HeaderText="Preparation" />
</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>
<asp:HiddenField runat="server" ID="hidSaveValue" />
<f:HiddenField runat="server" ID="hidXingNum"></f:HiddenField>
</form>
<script src="../Scripts/startScore.js"></script>
<script type="text/javascript">
var xingNum =<%=hidXingNum.Text%>;
$(function () {
xinBrid();
});
//单条保存
function btnSave(obj) {
var result = true;
var rowValue = "";
if (obj != undefined && obj != "0" && obj != "") {
var rn = parseInt($(obj).attr("cs"));
var FO = $(obj).attr("fono");
var IsEvaluateType = $(obj).attr("isevaluatetype");
var EvaluateType = $(obj).attr("evaluatetype");
//判断是否评价判断
if (IsEvaluateType == 1) {
layer.alert('You have already evaluated ' + FO + '!')
return false;
}
var oneScore = $("#spone" + rn + "").text() == "" ? 0 : $("#spone" + rn + "").text();
var twoSocre = $("#sptwo" + rn + "").text() == "" ? 0 : $("#sptwo" + rn + "").text();
var threeScore = $("#spthree" + rn + "").text() == "" ? 0 : $("#spthree" + rn + "").text();
var fourScore = $("#spfour" + rn + "").text() == "" ? 0 : $("#spfour" + rn + "").text();
var fiveScore = $("#spfive" + rn + "").text() == "" ? 0 : $("#spfive" + rn + "").text();
var sixScore = $("#spsix" + rn + "").text() == "" ? 0 : $("#spsix" + rn + "").text();
rowValue = FO + ',' + oneScore + "," + twoSocre + "," + threeScore + "," + fourScore + "," + fiveScore + "," + sixScore + "," + IsEvaluateType + "," + EvaluateType;
$("#hidSaveValue").val(rowValue);
}
return result;
}
//星星绑定
function xinBrid() {
if (xingNum != undefined && xingNum != "0" && xingNum != "") {
for (var i = 1; i <= parseInt(xingNum); i++) {
//score1
var evaluatetype = $("#startone" + i + "").attr("evaluatetype");
if ($("#startone" + i + "").attr("isevaluatetype") == 1) {
$("#startone" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#spone" + i + "").text(num);
});
} else {
scoreFun($("#startone" + i + ""));
}
//score2
evaluatetype = $("#starttwo" + i + "").attr("evaluatetype");
if ($("#starttwo" + i + "").attr("isevaluatetype") == 1) {
$("#starttwo" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#sptwo" + i + "").text(num);
});
} else {
scoreFun($("#starttwo" + i + ""));
}
//score3
evaluatetype = $("#startthree" + i + "").attr("evaluatetype");
if ($("#startthree" + i + "").attr("isevaluatetype") == 1) {
$("#startthree" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#spthree" + i + "").text(num);
});
} else {
scoreFun($("#startthree" + i + ""));
}
//score4
evaluatetype = $("#startfour" + i + "").attr("evaluatetype");
if ($("#startfour" + i + "").attr("isevaluatetype") == 1) {
$("#startfour" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#spfour" + i + "").text(num);
});
} else {
scoreFun($("#startfour" + i + ""));
}
//score5
evaluatetype = $("#startfive" + i + "").attr("evaluatetype");
if ($("#startfive" + i + "").attr("isevaluatetype") == 1) {
$("#startfive" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#spfive" + i + "").text(num);
});
} else {
scoreFun($("#startfive" + i + ""));
}
//score6
evaluatetype = $("#startsix" + i + "").attr("evaluatetype");
if ($("#startsix" + i + "").attr("isevaluatetype") == 1) {
$("#startsix" + i + " div p").each(function (index, element) {
var num = $(this).attr("tip");
var www = evaluatetype == "User" ? num * 16 : num * 2 * 16;
$(this).css("width", www);
$("#spsix" + i + "").text(num);
});
} else {
scoreFun($("#startsix" + i + ""));
}
}
}
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>