Compare commits

..

1 Commits

Author SHA1 Message Date
shecs 9cd730b56b 111 2024-06-06 12:35:17 +08:00
46 changed files with 2041 additions and 8408 deletions
-3
View File
@@ -1195,6 +1195,3 @@ FCL/WebApi/obj/Release/WebApi.pdb
/FCL/FineUIPro.Web/File/Excel/20240515031710
/FCL/FineUIPro.Web/File/Excel/20240515031759
/FCL/WebApi/obj/Debug
/备份/FCLPackFile_2024.06.06
/FCL/packages
/FCL/FineUIPro.Web/Web.config
+2 -9
View File
@@ -1,9 +1,5 @@
ALTER TABLE dbo.EMC_Punishment ADD IsUserEvaluated BIT NULL
ALTER TABLE dbo.EMC_Punishment ADD IsEvaluated BIT NULL
GO
ALTER TABLE dbo.EMC_Punishment ADD IsDepEvaluated BIT NULL
GO
ALTER TABLE dbo.SyncDataUserLogs ADD Josn NVARCHAR(MAX)
GO
@@ -32,10 +28,7 @@ dis.DisciplineCN AS Discipline_CN,
WHEN dis.DisciplineCN IS NULL THEN dis.Discipline
ELSE dis.Discipline+dis.DisciplineCN END) AS Discipline,
(SELECT TOP 1 p.ViolationDegree FROM dbo.EMC_Punishment p
WHERE p.FO_NO=a.FO AND p.ViolationRelatedSes=a.SES_No AND p.Flag='1'
AND (p.IsUserEvaluated IS NULL OR IsDepEvaluated IS NULL )) AS ViolationDegree,
(SELECT TOP 1 p.ViolationDegree FROM dbo.EMC_Punishment p
WHERE p.FO_NO=a.FO AND p.ViolationRelatedSes=a.SES_No AND p.Flag='1') AS ShowViolationDegree
WHERE p.FO_NO=a.FO AND p.ViolationRelatedSes=a.SES_No AND p.Flag='1' AND IsEvaluated IS NULL) AS ViolationDegree
FROM FC_SESReport AS a
LEFT JOIN FC_SESRelatedData AS b ON a.FO=b.FO_NO
LEFT JOIN Base_Discipline AS dis ON dis.DisciplineId = b.DisciplineId
+5 -5
View File
@@ -30,12 +30,12 @@ namespace BLL.APIService
}
public static void GetSyncUserInfo()
{
//var token = GetUserToken(); //获取接口token
var token = GetUserToken(); //获取接口token
var dic = GetDepartList(); //把本地数据库中的部门全部取出作为字典
var dicUser = GetUserInfoByAccount(); //同上把所有用户取出来
string file = System.Web.HttpContext.Current.Server.MapPath("~/data.txt");
string result = System.IO.File.ReadAllText(file);
//string result = BLL.Common.HttpHelper.HttpPostRequest(GETHRINfOAPI, "", token);
//string file = System.Web.HttpContext.Current.Server.MapPath("~/data.txt");
//string result = System.IO.File.ReadAllText(file);
string result = BLL.Common.HttpHelper.HttpPostRequest(GETHRINfOAPI, "", token);
var data = JsonHelper.DeserializeJsonToObject<ResultData<List<UserInfo>>>(result);
List<Model.SyncDataUserLogs> logList = new List<Model.SyncDataUserLogs>();
if (data.code == "200")
@@ -246,7 +246,7 @@ namespace BLL.APIService
/// <returns></returns>
private static Dictionary<string,string> GetUserInfoByAccount()
{
return BLL.Funs.DB.Sys_User.Where(t=>t.IsPost==true).Select(t => new { t.UserId, t.Account }).ToList()
return BLL.Funs.DB.Sys_User.Select(t => new { t.UserId, t.Account }).ToList()
.ToDictionary(t => t.Account.ToLower(), t => t.UserId);
}
+1 -1
View File
@@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>BLL</RootNamespace>
<AssemblyName>BLL</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<SccProjectName>
</SccProjectName>
+3 -66
View File
@@ -56,59 +56,6 @@ namespace BLL.Common
return strPostReponse;
}
public static string HttpPost(string Url, string jsonParas)
{
string strURL = Url;
//创建一个HTTP请求
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(strURL);
//Post请求方式
request.Method = "POST";
//内容类型
request.ContentType = "application/x-www-form-urlencoded";
//设置参数,并进行URL编码
string paraUrlCoded = jsonParas;//System.Web.HttpUtility.UrlEncode(jsonParas);
byte[] payload;
//将Json字符串转化为字节
payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded);
//设置请求的ContentLength
request.ContentLength = payload.Length;
//发送请求,获得请求流
Stream writer;
try
{
writer = request.GetRequestStream();//获取用于写入请求数据的Stream对象
}
catch (Exception)
{
writer = null;
BLL.ErrLogInfo.WriteLog("连接服务器失败!");
}
//将请求参数写入流
writer.Write(payload, 0, payload.Length);
writer.Close();//关闭请求流
// String strValue = "";//strValue为http响应所返回的字符流
HttpWebResponse response;
try
{
//获得响应流
response = (HttpWebResponse)request.GetResponse();
}
catch (WebException ex)
{
response = ex.Response as HttpWebResponse;
}
Stream s = response.GetResponseStream();
// Stream postData = Request.InputStream;
StreamReader sRead = new StreamReader(s);
string postContent = sRead.ReadToEnd();
sRead.Close();
return postContent;//返回Json数据
}
private static HttpWebRequest CreateHttpRequest(string url, string requestType, string token, params object[] strJson)
{
HttpWebRequest request = null;
@@ -116,7 +63,7 @@ namespace BLL.Common
const string post = "POST";
if (string.Equals(requestType, get, StringComparison.OrdinalIgnoreCase))
{
request = CreateGetHttpWebRequest(url,token);
request = CreateGetHttpWebRequest(url);
}
if (string.Equals(requestType, post, StringComparison.OrdinalIgnoreCase))
{
@@ -125,22 +72,12 @@ namespace BLL.Common
return request;
}
private static HttpWebRequest CreateGetHttpWebRequest(string url,string token)
private static HttpWebRequest CreateGetHttpWebRequest(string url)
{
var getRequest = HttpWebRequest.Create(url) as HttpWebRequest;
if (!string.IsNullOrEmpty(token))
{
getRequest.ContentType = "application/json";
getRequest.Headers.Add("token", token);
}
else
{
getRequest.ContentType = "text/html;charset=UTF-8";
}
getRequest.Method = "GET";
getRequest.Timeout = 5000;
getRequest.ContentType = "text/html;charset=UTF-8";
getRequest.AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate;
return getRequest;
}
-21
View File
@@ -59,27 +59,6 @@ namespace BLL
}
}
// 单点登陆ClientId参数
public static string ClientId
{
get;
set;
}
// 单点登陆ClientSecret参数
public static string ClientSecret
{
get;
set;
}
// 单点登陆Redirect_url参数
public static string Redirect_url
{
get;
set;
}
/// <summary>
/// 单位设置
/// </summary>
+1 -1
View File
@@ -8,4 +8,4 @@
</dependentAssembly>
</assemblyBinding>
</runtime>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1"/></startup></configuration>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.8"/></startup></configuration>
@@ -73,9 +73,7 @@
<f:HiddenField runat="server" ID="hidisDepScore4"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore5"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore6"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMaxScore1"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMaxScore2"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMsg"></f:HiddenField>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField HeaderText="承包商<br/>Contractor" HeaderTextAlign="Center" Width="200px">
@@ -171,10 +169,10 @@
<f:RenderField ColumnID="Requisitioner" DataField="Requisitioner" Width="200px" SortField="Requisitioner"
FieldType="String" HeaderText="Requisitioner" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="ShowViolationDegree" Width="110px" HeaderText="违章程度"
HeaderTextAlign="Center" TextAlign="Center" SortField="ShowViolationDegree">
<f:TemplateField ColumnID="ViolationDegree" Width="110px" HeaderText="违章程度"
HeaderTextAlign="Center" TextAlign="Center" SortField="ViolationDegree">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# ConvertViolationDegree(Eval("ShowViolationDegree")) %>'></asp:Label>
<asp:Label ID="Label3" runat="server" Text='<%# ConvertViolationDegree(Eval("ViolationDegree")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
@@ -213,43 +211,8 @@
var target = $(event.target);
var cellEl = target.closest('.f-grid-cell');
var rowId = grid1.getRowId(cellEl);
//console.log(rowId);
var columnId = grid1.getColumnId(cellEl);
var columnName = grid1.getColumn(columnId).columnId;
//获取控件值1()
var maxScore1 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore1-inputEl").val();
//获取控件值2()
var maxScore2 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore2-inputEl").val()
var hidMsg = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMsg-inputEl").val()
// 用户EHSS
if (columnName == "Score3" && value > parseFloat(maxScore1)) {
F.alert(hidMsg + "最大只能评" + maxScore1 + "星");
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
// 部门安全监管
else if (columnName == "Score1" && value > parseFloat(maxScore2)) {
F.alert(hidMsg + "最大只能评" + maxScore2 + "星");
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
else {
//更新单元格的值
grid1.updateCellValue(rowId, columnId, value);
}
grid1.updateCellValue(rowId, columnId, value);
});
});
@@ -3,7 +3,6 @@ using BLL.Common;
using FineUIPro.Web.common.SysManage;
using Model;
using Newtonsoft.Json;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Data;
@@ -13,7 +12,6 @@ using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using static NPOI.POIFS.Crypt.CryptoFunctions;
namespace FineUIPro.Web.Evaluation
{
@@ -254,7 +252,6 @@ namespace FineUIPro.Web.Evaluation
HiddenField hidMaxScore1 = Grid1.Rows[i].FindControl("hidMaxScore1") as HiddenField;
HiddenField hidMaxScore2 = Grid1.Rows[i].FindControl("hidMaxScore2") as HiddenField;
HiddenField hidMsg = Grid1.Rows[i].FindControl("hidMsg") as HiddenField;
var foNo = Grid1.Rows[i].DataKeys[0].ToString();
var isEvaluateType = Grid1.Rows[i].DataKeys[1].ToString();
@@ -270,62 +267,6 @@ namespace FineUIPro.Web.Evaluation
}
}
// 违章扣分
if (userType == "1")
{
var sesList = Funs.DB.FC_SESReportView.Where(p => p.FO_NO == foNo && p.Requisitioner == CurrUser.Account).OrderByDescending(t => t.ViolationDegree).FirstOrDefault();
switch (sesList?.ViolationDegree)
{
case "1":
hidMaxScore1.Text = "4.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在一般违章,";
break;
case "2":
hidMaxScore1.Text = "4";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在严重违章,";
break;
case "3":
hidMaxScore1.Text = "3.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在零容忍违章,";
break;
default:
hidMaxScore1.Text = "5";
hidMsg.Text = "";
break;
}
}
else
{
var sesList = Funs.DB.FC_SESReportView.AsQueryable();
var setList = Funs.DB.Sys_User.Where(p => new string[] { Const.Role_CTSSId, Const.Role_CTSCId, Const.Role_CTMTId }.Contains(p.RoleId) && p.UserId == CurrUser.UserId).ToList();
if (setList.Count > 0)
sesList = sesList.Where(p => p.FO_NO == foNo && p.Requisitioner != "" && p.Requisitioner != null).OrderByDescending(t=>t.ViolationDegree);
else
sesList = sesList.Where(p => p.FO_NO == foNo && (p.MainCoordinatorUser == CurrUser.Account || p.ContractAdminUser == CurrUser.Account || p.UserRepresentativeUser == CurrUser.Account)).OrderByDescending(t => t.ViolationDegree);
var max = sesList.FirstOrDefault();
switch (max?.ViolationDegree)
{
case "1":
hidMaxScore2.Text = "4.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在一般违章,";
break;
case "2":
hidMaxScore2.Text = "4";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在严重违章,";
break;
case "3":
hidMaxScore2.Text = "3.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在零容忍违章,";
break;
default:
hidMaxScore2.Text = "5";
hidMsg.Text = "";
break;
}
}
if (isEvaluateType == "1")
{
@@ -823,22 +764,6 @@ namespace FineUIPro.Web.Evaluation
scoreJournalList.Add(scoreJournal);
}
Funs.DB.Score_JournalEvaluation.InsertAllOnSubmit(scoreJournalList);
// 回写违章捐款(用户)
var PunishList= from x in pjSESReport where x.ViolationDegree!=null select x;
if (PunishList.Count() > 0)
{
foreach (var p in PunishList)
{
var punish = Funs.DB.EMC_Punishment.FirstOrDefault(x => x.FO_NO == p.FO_NO && x.ViolationRelatedSes == p.SES_No);
if (punish != null)
{
punish.IsUserEvaluated = true;
Funs.DB.SubmitChanges();
}
}
}
}
}
//部门
@@ -954,21 +879,6 @@ namespace FineUIPro.Web.Evaluation
}
Funs.DB.Score_JournalEvaluation.InsertAllOnSubmit(scoreJournalList);
}
// 回写违章捐款(部门)
var PunishList = from x in pjSESReport where x.ViolationDegree != null select x;
if (PunishList.Count() > 0)
{
foreach (var p in PunishList)
{
var punish = Funs.DB.EMC_Punishment.FirstOrDefault(x => x.FO_NO == p.FO_NO && x.ViolationRelatedSes == p.SES_No);
if (punish != null)
{
punish.IsDepEvaluated = true;
Funs.DB.SubmitChanges();
}
}
}
}
}
}
@@ -1005,7 +915,7 @@ namespace FineUIPro.Web.Evaluation
{
sesList = Funs.DB.FC_SESReportView.Where(p => p.FO_NO == FoNo && p.Requisitioner == CurrUser.Account).ToList();
}
Grid2.DataSource = sesList.OrderByDescending(x=>x.ShowViolationDegree);
Grid2.DataSource = sesList;
Grid2.DataBind();
}
#endregion
@@ -1459,7 +1369,7 @@ namespace FineUIPro.Web.Evaluation
{
var row = e.DataItem as Model.FC_SESReportView;
if (!string.IsNullOrEmpty(row.ShowViolationDegree))
if (!string.IsNullOrEmpty(row.ViolationDegree))
{
e.RowCssClass = "color2";
}
@@ -203,33 +203,6 @@ namespace FineUIPro.Web.Evaluation
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore6;
/// <summary>
/// hidMaxScore1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMaxScore1;
/// <summary>
/// hidMaxScore2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMaxScore2;
/// <summary>
/// hidMsg 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMsg;
/// <summary>
/// lblContractor 控件。
/// </summary>
@@ -14,18 +14,11 @@
color: #fff;
}
.f-grid-row.color2,
.f-grid-row.color2 .f-icon,
.f-grid-row.color2 a {
background-color: red;
color: #fff;
}
.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;
}
@@ -74,9 +67,6 @@
<f:HiddenField runat="server" ID="hidisDepScore4"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore5"></f:HiddenField>
<f:HiddenField runat="server" ID="hidisDepScore6"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMaxScore1"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMaxScore2"></f:HiddenField>
<f:HiddenField runat="server" Text="" ID="hidMsg"></f:HiddenField>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField HeaderText="承包商<br/>Contractor" HeaderTextAlign="Center" Width="200px">
@@ -148,7 +138,7 @@
<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" OnRowDataBound="Grid2_RowDataBound">
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">
@@ -171,12 +161,6 @@
<f:RenderField ColumnID="Requisitioner" DataField="Requisitioner" Width="200px" SortField="Requisitioner"
FieldType="String" HeaderText="Requisitioner" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="ShowViolationDegree" Width="110px" HeaderText="违章程度"
HeaderTextAlign="Center" TextAlign="Center" SortField="ShowViolationDegree">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# ConvertViolationDegree(Eval("ShowViolationDegree")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
</Columns>
</f:Grid>
</Items>
@@ -199,12 +183,10 @@
function renderRateUser(value, row) {
var evaltype = row.rowValue["IsEvaluateType"];
return F.rateHtml(value, {
allowClear: true,
readonly: evaltype == 1 ? true : false,
allowHalf: true,
textVisible: false
});
return html;
}
F.ready(function () {
var grid1 = F(grid1ClientID);
@@ -212,46 +194,13 @@
F.rateEvents(grid1.el, function (event, value) {
var target = $(event.target);
var cellEl = target.closest('.f-grid-cell');
var rowId = grid1.getRowId(cellEl);
//console.log(rowId);
var columnId = grid1.getColumnId(cellEl);
var columnName = grid1.getColumn(columnId).columnId;
//获取控件值1()
var maxScore1 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore1-inputEl").val();
//获取控件值2()
var maxScore2 = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMaxScore2-inputEl").val()
var hidMsg = $("#Panel1_panelTopRegion_Grid1_ftpl_" + rowId + "_0_hidMsg-inputEl").val()
// 用户EHSS
if (columnName == "Score3" && value > parseFloat(maxScore1)) {
F.alert(hidMsg + "最大只能评" + maxScore1 + "星");
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
// 部门安全监管
else if (columnName == "Score1" && value > parseFloat(maxScore2)) {
F.alert(hidMsg + "最大只能评" + maxScore2 + "星");
var html = F.rateHtml(0, {
allowClear: true,
allowHalf: true,
textVisible: false
});
grid1.getCellEl(rowId, columnId).html(html)
}
else {
//更新单元格的值
grid1.updateCellValue(rowId, columnId, value);
}
//更新单元格的值
grid1.updateCellValue(rowId, columnId, value);
});
});
</script>
</body>
@@ -1,19 +1,15 @@
using BLL;
using BLL.Common;
using FineUIPro.Web.common.SysManage;
using Model;
using Newtonsoft.Json;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using static NPOI.POIFS.Crypt.CryptoFunctions;
namespace FineUIPro.Web.Evaluation
{
@@ -251,15 +247,10 @@ namespace FineUIPro.Web.Evaluation
HiddenField hidisDepScore4 = Grid1.Rows[i].FindControl("hidisDepScore4") as HiddenField;
HiddenField hidisDepScore5 = Grid1.Rows[i].FindControl("hidisDepScore5") as HiddenField;
HiddenField hidisDepScore6 = Grid1.Rows[i].FindControl("hidisDepScore6") as HiddenField;
HiddenField hidMaxScore1 = Grid1.Rows[i].FindControl("hidMaxScore1") as HiddenField;
HiddenField hidMaxScore2 = Grid1.Rows[i].FindControl("hidMaxScore2") as HiddenField;
HiddenField hidMsg = Grid1.Rows[i].FindControl("hidMsg") as HiddenField;
var foNo = Grid1.Rows[i].DataKeys[0].ToString();
var isEvaluateType = Grid1.Rows[i].DataKeys[1].ToString();
var evaluateType = Grid1.Rows[i].DataKeys[2].ToString();
var userType = Grid1.Rows[i].DataKeys[3].ToString();
if (contractorList != null && contractorList.Count(p => p.FO_NO == foNo) > 0)
{
@@ -269,63 +260,6 @@ namespace FineUIPro.Web.Evaluation
lblContractor.Text = contractModel.Contractor;
}
}
// 违章扣分
if (userType == "1")
{
var sesList = Funs.DB.FC_SESReportView.Where(p => p.FO_NO == foNo && p.Requisitioner == CurrUser.Account).OrderByDescending(t => t.ViolationDegree).FirstOrDefault();
switch (sesList?.ViolationDegree)
{
case "1":
hidMaxScore1.Text = "4.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在一般违章,";
break;
case "2":
hidMaxScore1.Text = "4";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在严重违章,";
break;
case "3":
hidMaxScore1.Text = "3.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{sesList?.SES_No}存在零容忍违章,";
break;
default:
hidMaxScore1.Text = "5";
hidMsg.Text = "";
break;
}
}
else
{
var sesList = Funs.DB.FC_SESReportView.AsQueryable();
var setList = Funs.DB.Sys_User.Where(p => new string[] { Const.Role_CTSSId, Const.Role_CTSCId, Const.Role_CTMTId }.Contains(p.RoleId) && p.UserId == CurrUser.UserId).ToList();
if (setList.Count > 0)
sesList = sesList.Where(p => p.FO_NO == foNo && p.Requisitioner != "" && p.Requisitioner != null && p.Requisitioner != string.Empty).OrderByDescending(t => t.ViolationDegree);
else
sesList = sesList.Where(p => p.FO_NO == foNo && (p.MainCoordinatorUser == CurrUser.Account || p.ContractAdminUser == CurrUser.Account || p.UserRepresentativeUser == CurrUser.Account)).OrderByDescending(t => t.ViolationDegree);
var max = sesList.FirstOrDefault();
switch (max?.ViolationDegree)
{
case "1":
hidMaxScore2.Text = "4.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在一般违章,";
break;
case "2":
hidMaxScore2.Text = "4";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在严重违章,";
break;
case "3":
hidMaxScore2.Text = "3.5";
hidMsg.Text = $"当前合同号:{foNo}下,SES:{max?.SES_No}存在零容忍违章,";
break;
default:
hidMaxScore2.Text = "5";
hidMsg.Text = "";
break;
}
}
if (isEvaluateType == "1")
{
Grid1.Rows[i].RowCssClass = "color1";
@@ -824,21 +758,6 @@ namespace FineUIPro.Web.Evaluation
}
Funs.DB.Score_JournalEvaluation.InsertAllOnSubmit(scoreJournalList);
}
// 回写违章捐款(用户)
var PunishList = from x in pjSESReport where x.ViolationDegree != null select x;
if (PunishList.Count() > 0)
{
foreach (var p in PunishList)
{
var punish = Funs.DB.EMC_Punishment.FirstOrDefault(x => x.FO_NO == p.FO_NO && x.ViolationRelatedSes == p.SES_No);
if (punish != null)
{
punish.IsUserEvaluated = true;
Funs.DB.SubmitChanges();
}
}
}
}
//部门
if (item.EvaluateType == "Dep")
@@ -953,21 +872,6 @@ namespace FineUIPro.Web.Evaluation
}
Funs.DB.Score_JournalEvaluation.InsertAllOnSubmit(scoreJournalList);
}
// 回写违章捐款(部门)
var PunishList = from x in pjSESReport where x.ViolationDegree != null select x;
if (PunishList.Count() > 0)
{
foreach (var p in PunishList)
{
var punish = Funs.DB.EMC_Punishment.FirstOrDefault(x => x.FO_NO == p.FO_NO && x.ViolationRelatedSes == p.SES_No);
if (punish != null)
{
punish.IsDepEvaluated = true;
Funs.DB.SubmitChanges();
}
}
}
}
}
}
@@ -1004,7 +908,7 @@ namespace FineUIPro.Web.Evaluation
{
sesList = Funs.DB.FC_SESReportView.Where(p => p.FO_NO == FoNo && p.Requisitioner == CurrUser.Account).ToList();
}
Grid2.DataSource = sesList.OrderByDescending(x => x.ShowViolationDegree);
Grid2.DataSource = sesList;
Grid2.DataBind();
}
#endregion
@@ -1453,38 +1357,5 @@ namespace FineUIPro.Web.Evaluation
BindGrid();
}
#endregion
protected void Grid2_RowDataBound(object sender, GridRowEventArgs e)
{
var row = e.DataItem as Model.FC_SESReportView;
if (!string.IsNullOrEmpty(row.ShowViolationDegree))
{
e.RowCssClass = "color2";
}
}
protected string ConvertViolationDegree(object violationDegree)
{
string degree = string.Empty;
if (violationDegree != null)
{
if (violationDegree.ToString() == "1")
{
degree = "一般违章";
}
if (violationDegree.ToString() == "2")
{
degree = "严重违章";
}
if (violationDegree.ToString() == "3")
{
degree = "零容忍违章";
}
}
return degree;
}
}
}
+30 -68
View File
@@ -7,13 +7,11 @@
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.Evaluation
{
public partial class SafetyEvaluation
{
namespace FineUIPro.Web.Evaluation {
public partial class SafetyEvaluation {
/// <summary>
/// form1 控件。
/// </summary>
@@ -22,7 +20,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
@@ -31,7 +29,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
@@ -40,7 +38,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// panelTopRegion 控件。
/// </summary>
@@ -49,7 +47,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelTopRegion;
/// <summary>
/// Grid1 控件。
/// </summary>
@@ -58,7 +56,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
@@ -67,7 +65,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// rdbUserType 控件。
/// </summary>
@@ -76,7 +74,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.RadioButtonList rdbUserType;
/// <summary>
/// drpUser 控件。
/// </summary>
@@ -85,7 +83,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpUser;
/// <summary>
/// drpContractNo 控件。
/// </summary>
@@ -94,7 +92,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList drpContractNo;
/// <summary>
/// btnUndo 控件。
/// </summary>
@@ -103,7 +101,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnUndo;
/// <summary>
/// btnAutoEvaluation 控件。
/// </summary>
@@ -112,7 +110,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAutoEvaluation;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
@@ -121,7 +119,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// hdFo 控件。
/// </summary>
@@ -130,7 +128,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdFo;
/// <summary>
/// BatchEvaluation 控件。
/// </summary>
@@ -139,7 +137,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button BatchEvaluation;
/// <summary>
/// LinkFoNo 控件。
/// </summary>
@@ -148,7 +146,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.LinkButton LinkFoNo;
/// <summary>
/// hidisDepScore1 控件。
/// </summary>
@@ -157,7 +155,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore1;
/// <summary>
/// hidisDepScore2 控件。
/// </summary>
@@ -166,7 +164,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore2;
/// <summary>
/// hidisDepScore3 控件。
/// </summary>
@@ -175,7 +173,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore3;
/// <summary>
/// hidisDepScore4 控件。
/// </summary>
@@ -184,7 +182,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore4;
/// <summary>
/// hidisDepScore5 控件。
/// </summary>
@@ -193,7 +191,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore5;
/// <summary>
/// hidisDepScore6 控件。
/// </summary>
@@ -202,34 +200,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidisDepScore6;
/// <summary>
/// hidMaxScore1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMaxScore1;
/// <summary>
/// hidMaxScore2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMaxScore2;
/// <summary>
/// hidMsg 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hidMsg;
/// <summary>
/// lblContractor 控件。
/// </summary>
@@ -238,7 +209,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblContractor;
/// <summary>
/// wjsc 控件。
/// </summary>
@@ -247,7 +218,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.GroupField wjsc;
/// <summary>
/// panelBottomRegion 控件。
/// </summary>
@@ -256,7 +227,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel panelBottomRegion;
/// <summary>
/// Grid2 控件。
/// </summary>
@@ -265,16 +236,7 @@ namespace FineUIPro.Web.Evaluation
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid2;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label3;
/// <summary>
/// Window1 控件。
/// </summary>
+12 -45
View File
@@ -12,7 +12,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>FineUIPro.Web</RootNamespace>
<AssemblyName>FineUIPro.Web</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<UseIISExpress>true</UseIISExpress>
<SccProjectName>
</SccProjectName>
@@ -52,6 +52,9 @@
<Prefer32Bit>false</Prefer32Bit>
</PropertyGroup>
<ItemGroup>
<Reference Include="AxInterop.SYNCARDOCXLib">
<HintPath>..\Lib\AxInterop.SYNCARDOCXLib.dll</HintPath>
</Reference>
<Reference Include="BouncyCastle.Crypto, Version=1.8.9.0, Culture=neutral, PublicKeyToken=0e99375e54769942, processorArchitecture=MSIL">
<HintPath>..\packages\Portable.BouncyCastle.1.8.9\lib\net40\BouncyCastle.Crypto.dll</HintPath>
</Reference>
@@ -62,23 +65,11 @@
<Reference Include="ICSharpCode.SharpZipLib, Version=1.3.2.10, Culture=neutral, PublicKeyToken=1b03e6acf1164f73, processorArchitecture=MSIL">
<HintPath>..\packages\SharpZipLib.1.3.2\lib\net45\ICSharpCode.SharpZipLib.dll</HintPath>
</Reference>
<Reference Include="Microsoft.Bcl.AsyncInterfaces, Version=1.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.Bcl.AsyncInterfaces.1.1.0\lib\net461\Microsoft.Bcl.AsyncInterfaces.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="Microsoft.IdentityModel.Abstractions, Version=7.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Abstractions.7.6.0\lib\net461\Microsoft.IdentityModel.Abstractions.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.JsonWebTokens, Version=6.22.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.JsonWebTokens.6.22.1\lib\net461\Microsoft.IdentityModel.JsonWebTokens.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.Logging, Version=7.6.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Logging.7.6.0\lib\net461\Microsoft.IdentityModel.Logging.dll</HintPath>
</Reference>
<Reference Include="Microsoft.IdentityModel.Tokens, Version=6.22.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.IdentityModel.Tokens.6.22.1\lib\net461\Microsoft.IdentityModel.Tokens.dll</HintPath>
</Reference>
<Reference Include="Microsoft.JScript" />
<Reference Include="Microsoft.QualityTools.Testing.Fakes, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="Microsoft.ReportViewer.Common, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<HintPath>..\packages\Microsoft.ReportingServices.ReportViewerControl.WebForms.150.1484.0\lib\net40\Microsoft.ReportViewer.Common.dll</HintPath>
</Reference>
@@ -118,43 +109,14 @@
<Reference Include="NPOI.OpenXmlFormats, Version=2.5.5.0, Culture=neutral, PublicKeyToken=0df73ec7942b34e1, processorArchitecture=MSIL">
<HintPath>..\packages\NPOI.2.5.5\lib\net45\NPOI.OpenXmlFormats.dll</HintPath>
</Reference>
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Data.Linq" />
<Reference Include="System.DirectoryServices" />
<Reference Include="System.DirectoryServices.Protocols" />
<Reference Include="System.IdentityModel.Tokens.Jwt, Version=6.22.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
<HintPath>..\packages\System.IdentityModel.Tokens.Jwt.6.22.1\lib\net461\System.IdentityModel.Tokens.Jwt.dll</HintPath>
</Reference>
<Reference Include="System.IO.Compression.FileSystem" />
<Reference Include="System.Management" />
<Reference Include="System.Memory, Version=4.0.1.2, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.5\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Net.Http" />
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.5.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.6.0\lib\netstandard2.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Text.Encodings.Web, Version=4.0.5.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Encodings.Web.4.7.2\lib\net461\System.Text.Encodings.Web.dll</HintPath>
</Reference>
<Reference Include="System.Text.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Text.Json.4.6.0\lib\net461\System.Text.Json.dll</HintPath>
</Reference>
<Reference Include="System.Threading.Tasks.Extensions, Version=4.2.0.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll</HintPath>
</Reference>
<Reference Include="System.ValueTuple, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.ValueTuple.4.5.0\lib\net461\System.ValueTuple.dll</HintPath>
</Reference>
<Reference Include="System.Web.DataVisualization" />
<Reference Include="System.Web.DynamicData" />
<Reference Include="System.Web.Entity" />
@@ -171,6 +133,10 @@
<Reference Include="System.Web.Services" />
<Reference Include="System.EnterpriseServices" />
<Reference Include="System.Xml.Linq" />
<Reference Include="ThoughtWorks.QRCode, Version=1.0.2774.19990, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\ThoughtWorks.QRCode.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Content Include="AttachFile\res\webuploader\Uploader.swf" />
@@ -2594,6 +2560,7 @@
<Content Include="Doc\FC操作手册.docx" />
<Content Include="File\Excel\SES Report.xlsx" />
<Content Include="File\Excel\SES ReportToCPT.xlsx" />
<Content Include="File\Excel\EvaluationReport.xls" />
<Content Include="File\Excel\CPTReport.xlsx" />
<Content Include="File\Excel\承包商评估表.xlsx" />
<None Include="packages.config" />
@@ -11,7 +11,6 @@
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
<UseGlobalApplicationHostFile />
<NameOfLastUsedPublishProfile>E:\MyProject\FCL\Basf_FCL\FCL\FineUIPro.Web\Properties\PublishProfiles\FolderProfile.pubxml</NameOfLastUsedPublishProfile>
</PropertyGroup>
<ProjectExtensions>
<VisualStudio>
+10 -18
View File
@@ -32,10 +32,6 @@
Funs.RootPath = Server.MapPath("~/");
// 日志文件所在目录
ErrLogInfo.DefaultErrLogFullPath = Server.MapPath("~/ErrLog.txt");
Funs.ClientId = ConfigurationManager.AppSettings["clientId"];
Funs.ClientSecret = ConfigurationManager.AppSettings["clientSecret"];
Funs.Redirect_url = ConfigurationManager.AppSettings["redirect_url"];
Funs.SystemName = ConfigurationManager.AppSettings["SystemName"];
Funs.ConnString = ConfigurationManager.ConnectionStrings["FCLDBConnectionString"].ConnectionString;
}
@@ -121,11 +117,10 @@
// 承包商资质提前3个过期提示
var queListOne = from x in Funs.DB.EMC_Contractor_Qualification
join y in Funs.DB.FC_SESRelatedData on x.FoId equals y.ID
where x.LimitEndDate != null && y.FC_Status == "Valid"
&& x.LimitEndDate.Value.AddMonths(-3).Date <= DateTime.Now.Date
&& x.LimitEndDate.Value.AddMonths(-3).AddDays(15).Date >= DateTime.Now.Date
select x;
where x.LimitEndDate != null
&& x.LimitEndDate.Value.AddMonths(-3).Date <= DateTime.Now.Date
&& x.LimitEndDate.Value.AddMonths(-3).AddDays(15).Date >= DateTime.Now.Date
select x;
if (queListOne.Count() > 0)
{
System.Timers.Timer aTimer = new System.Timers.Timer();
@@ -139,11 +134,10 @@
// 承包商资质提前1个过期提示
var queListTwo = from x in Funs.DB.EMC_Contractor_Qualification
join y in Funs.DB.FC_SESRelatedData on x.FoId equals y.ID
where x.LimitEndDate != null && y.FC_Status == "Valid"
where x.LimitEndDate != null
&& x.LimitEndDate.Value.AddMonths(-1).Date <= DateTime.Now.Date
&& x.LimitEndDate.Value.AddMonths(-1).AddDays(15).Date >= DateTime.Now.Date
select x;
select x;
if (queListTwo.Count() > 0)
{
System.Timers.Timer aTimer = new System.Timers.Timer();
@@ -182,9 +176,8 @@
{
// 承包商资质提前3个过期提示
var queList = from x in Funs.DB.EMC_Contractor_Qualification
join y in Funs.DB.FC_SESRelatedData on x.FoId equals y.ID
where x.LimitEndDate != null && y.FC_Status == "Valid"
&& x.LimitEndDate.Value.AddMonths(-3).Date <= DateTime.Now.Date
where x.LimitEndDate != null
&& x.LimitEndDate.Value.AddMonths(-3).Date <= DateTime.Now.Date
&& x.LimitEndDate.Value.AddMonths(-3).AddDays(15).Date >= DateTime.Now.Date
select x;
if (queList.Count() > 0)
@@ -440,9 +433,8 @@
{
// 承包商资质提前1个过期提示
var queList = from x in Funs.DB.EMC_Contractor_Qualification
join y in Funs.DB.FC_SESRelatedData on x.FoId equals y.ID
where x.LimitEndDate != null && y.FC_Status == "Valid"
&& x.LimitEndDate.Value.AddMonths(-1).Date <= DateTime.Now.Date
where x.LimitEndDate != null
&& x.LimitEndDate.Value.AddMonths(-1).Date <= DateTime.Now.Date
&& x.LimitEndDate.Value.AddMonths(-1).AddDays(15).Date >= DateTime.Now.Date
select x;
if (queList.Count() > 0)
+2 -2
View File
@@ -224,10 +224,10 @@
}
})
$("#faskloginUrl").click(function () {
let clientId = '<%= BLL.Funs.ClientId %>';
let url = "https://login.microsoftonline.com/ecaa386b-c8df-4ce0-ad01-740cbdb5ba55/oauth2/v2.0/authorize";
let clientId = "9379ad91-eef9-4956-a1ee-8b04bb3d42c8";
let response_type = "code";
let redirect_url = encodeURIComponent('<%= BLL.Funs.Redirect_url %>');
let redirect_url = encodeURIComponent("http://localhost:6166/ssocallback.aspx");
let scope = "openid profile";
let response_mode = "query";
let state = "state123";
@@ -1,18 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
https://go.microsoft.com/fwlink/?LinkID=208121.
-->
<Project>
<PropertyGroup>
<DeleteExistingFiles>true</DeleteExistingFiles>
<ExcludeApp_Data>false</ExcludeApp_Data>
<LaunchSiteAfterPublish>true</LaunchSiteAfterPublish>
<LastUsedBuildConfiguration>Release</LastUsedBuildConfiguration>
<LastUsedPlatform>Any CPU</LastUsedPlatform>
<PublishProvider>FileSystem</PublishProvider>
<PublishUrl>E:\MyProject\FCL\publish</PublishUrl>
<WebPublishMethod>FileSystem</WebPublishMethod>
<_TargetId>Folder</_TargetId>
<SiteUrlToLaunchAfterPublish />
</PropertyGroup>
</Project>
File diff suppressed because it is too large Load Diff
+3 -34
View File
@@ -1,4 +1,4 @@
<?xml version="1.0"?>
<?xml version="1.0"?>
<!--
有关如何配置 ASP.NET 应用程序的详细消息,请访问
@@ -16,9 +16,6 @@
<!--连接字符串-->
<!--<add key="ConnectionString" value="Server=.;Database=FCLDB;Integrated Security=False; User ID=sa;Password=1111;MultipleActiveResultSets=true;Max Pool Size = 1000;Connect Timeout=1200"/>-->
<!--系统名称-->
<add key="clientId" value="db8ff79d-c3b5-4f08-b56d-0e1913a13bbb"/>
<add key="clientSecret" value="N5E8Q~gvFJ665-GZGD7AHfo6sZNzVTQcdBgN4diX"/>
<add key="redirect_url" value="https://fcl.basf-ypc.net.cn/ssocallback.aspx"/>
<add key="SystemName" value="FC"/>
<add key="ChartImageHandler" value="storage=file;timeout=20;url=~/Images/;"/>
<add key="aspnet:MaxHttpCollectionKeys" value="50000"/>
@@ -54,7 +51,7 @@
<add path="res.axd" verb="GET" 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="false" targetFramework="4.8">
<buildProviders>
<add extension=".rdlc" type="Microsoft.Reporting.RdlBuildProvider, Microsoft.ReportViewer.WebForms, Version=15.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
</buildProviders>
@@ -87,7 +84,7 @@
<error redirect="https://localhost/FCL/OperationError.aspx" statusCode="404"/>
</customErrors>
<!--Unencrypted __VIEWSTATE parameterviewstate 保存没有加密,解决方法-->
<machineKey validation="3DES" compatibilityMode="Framework20SP1"/>
<machineKey validation="3DES"/>
<!--Body Parameters Accepted in Query:https才能访问-->
<!--<httpCookies httpOnlyCookies="true" requireSSL="true"/>-->
</system.web>
@@ -140,34 +137,6 @@
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Threading.Tasks.Extensions" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.2.0.1" newVersion="4.2.0.1"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.5.0" newVersion="4.0.5.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Memory" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.1.2" newVersion="4.0.1.2"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Buffers" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Microsoft.IdentityModel.Logging" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-7.6.0.0" newVersion="7.6.0.0"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Text.Encodings.Web" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.5.1" newVersion="4.0.5.1"/>
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.ValueTuple" publicKeyToken="cc7b13ffcd2ddd51" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-4.0.3.0" newVersion="4.0.3.0"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
-14
View File
@@ -1,23 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Microsoft.Bcl.AsyncInterfaces" version="1.1.0" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Abstractions" version="7.6.0" targetFramework="net461" />
<package id="Microsoft.IdentityModel.JsonWebTokens" version="6.22.1" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Logging" version="7.6.0" targetFramework="net461" />
<package id="Microsoft.IdentityModel.Tokens" version="6.22.1" targetFramework="net461" />
<package id="Microsoft.ReportingServices.ReportViewerControl.WebForms" version="150.1484.0" targetFramework="net461" />
<package id="Microsoft.SqlServer.Types" version="14.0.1016.290" targetFramework="net40" />
<package id="Newtonsoft.Json" version="13.0.1" targetFramework="net461" />
<package id="NPOI" version="2.5.5" targetFramework="net461" />
<package id="Portable.BouncyCastle" version="1.8.9" targetFramework="net461" />
<package id="SharpZipLib" version="1.3.2" targetFramework="net461" />
<package id="System.Buffers" version="4.5.1" targetFramework="net461" />
<package id="System.IdentityModel.Tokens.Jwt" version="6.22.1" targetFramework="net461" />
<package id="System.Memory" version="4.5.5" targetFramework="net461" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net461" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.6.0" targetFramework="net461" />
<package id="System.Text.Encodings.Web" version="4.7.2" targetFramework="net461" />
<package id="System.Text.Json" version="4.6.0" targetFramework="net461" />
<package id="System.Threading.Tasks.Extensions" version="4.5.4" targetFramework="net461" />
<package id="System.ValueTuple" version="4.5.0" targetFramework="net461" />
</packages>
+39 -40
View File
@@ -1,12 +1,12 @@
using BLL;
using BLL.Common;
using Microsoft.IdentityModel.Tokens;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web.Security;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web
{
@@ -15,43 +15,42 @@ namespace FineUIPro.Web
private string code = string.Empty;
protected void Page_Load(object sender, EventArgs e)
{
this.code = Request.Params["code"];
//BLL.ErrLogInfo.WriteLog($"获取code={this.code}");
if (string.IsNullOrEmpty(this.code))
{
Response.Redirect("~/login.aspx");
return;
}
var token = GetAccessToken(this.code);
var token= GetAccessToken(this.code);
var userInfo = getUserInfo(token);
if (userInfo == null)
{
Response.Redirect("~/login.aspx");
return;
}
Response.Redirect("~/index.aspx");
}
private AccessTokenModel GetAccessToken(string _code)
{
string clientId = Funs.ClientId;
string clientSecret = Funs.ClientSecret;
string redirect_url = Funs.Redirect_url;
string clientId = "9379ad91-eef9-4956-a1ee-8b04bb3d42c8";
string clientSecret = "iLu8Q~4DRYAn~sMjvO1j.tgRERFWhILvLYRPNc9S";
string grant_type = "authorization_code";
string redirect_url = "http://localhost:6166/ssocallback.aspx";
string scope = "profile openid";
string baseUrl = $"https://login.microsoftonline.com/ecaa386b-c8df-4ce0-ad01-740cbdb5ba55/oauth2/v2.0/token";
string baseUrl = $" https://login.microsoftonline.com/ecaa386b-c8df-4ce0-ad01740cbdb5ba55/oauth2/v2.0/token";
try
{
string postData = $"code={code}&client_id={clientId}&client_secret={clientSecret}&grant_type={grant_type}&redirect_uri={redirect_url}&scope={scope}";
//BLL.ErrLogInfo.WriteLog($"请求参数postData={postData}");
string result = BLL.Common.HttpHelper.HttpPost(baseUrl, postData);
//BLL.ErrLogInfo.WriteLog($"请求API Result={result}");
string result = BLL.Common.HttpHelper.HttpPostRequest(baseUrl, postData, string.Empty);
var Data = JsonConvert.DeserializeObject<AccessTokenModel>(result);
return Data;
}
catch (Exception ex)
{
@@ -62,36 +61,22 @@ namespace FineUIPro.Web
}
private Model.Sys_User getUserInfo(AccessTokenModel token)
private UserTokenModel getUserInfo(AccessTokenModel token)
{
string baseUrl = "https://graph.microsoft.com/oidc/userinfo";
try
{
string username = string.Empty;
string[] toke_split= token.id_token.Split('.');
var header = Encoding.UTF8.GetString(Base64UrlEncoder.DecodeBytes(toke_split[0]));
var clamis= Encoding.UTF8.GetString(Base64UrlEncoder.DecodeBytes(toke_split[1]));
//BLL.ErrLogInfo.WriteLog("clamis=" + clamis);
JObject jo = JObject.Parse(clamis);
if (jo["cn"] != null)
var result = HttpHelper.HttpGetRequest(baseUrl, token.access_token);
if (result.IndexOf("sub") > -1)
{
username = jo["cn"].ToString();
var info = JsonConvert.DeserializeObject<UserTokenModel>(result);
//写入session信息
//写入cookie信息
return info;
}
else
{
if (jo["preferred_username"] != null)
{
string preferred_username = jo["preferred_username"].ToString();
username = preferred_username.Split('@')[0];
}
}
var info = Funs.DB.Sys_User.Where(t => t.Account == username && t.IsPost == true).FirstOrDefault();
if (info != null)
{
FormsAuthentication.SetAuthCookie(username, false);
Session[SessionName.CurrUser] = info;
}
return info;
}
catch (Exception ex)
{
@@ -103,4 +88,18 @@ namespace FineUIPro.Web
}
public class UserTokenModel
{
public string sub { get; set; }
public string name { get; set; }
public string family_name { get; set; }
public string given_name { get; set; }
public string picture { get; set; }
public string email { get; set; }
}
}
+15 -53
View File
@@ -29,6 +29,10 @@ namespace Model
#region
partial void OnCreated();
partial void OnCreated()
{
this.CommandTimeout = 600;
}
partial void InsertAttachFile(AttachFile instance);
partial void UpdateAttachFile(AttachFile instance);
partial void DeleteAttachFile(AttachFile instance);
@@ -9763,9 +9767,7 @@ namespace Model
private System.Nullable<System.DateTime> _CreateDate;
private System.Nullable<bool> _IsUserEvaluated;
private System.Nullable<bool> _IsDepEvaluated;
private System.Nullable<bool> _IsEvaluated;
private EntityRef<Base_Depart> _Base_Depart;
@@ -9815,10 +9817,8 @@ namespace Model
partial void OnRelatedSesMailIsSendChanged();
partial void OnCreateDateChanging(System.Nullable<System.DateTime> value);
partial void OnCreateDateChanged();
partial void OnIsUserEvaluatedChanging(System.Nullable<bool> value);
partial void OnIsUserEvaluatedChanged();
partial void OnIsDepEvaluatedChanging(System.Nullable<bool> value);
partial void OnIsDepEvaluatedChanged();
partial void OnIsEvaluatedChanging(System.Nullable<bool> value);
partial void OnIsEvaluatedChanged();
#endregion
public EMC_Punishment()
@@ -10236,42 +10236,22 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsUserEvaluated", DbType="Bit")]
public System.Nullable<bool> IsUserEvaluated
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsEvaluated", DbType="Bit")]
public System.Nullable<bool> IsEvaluated
{
get
{
return this._IsUserEvaluated;
return this._IsEvaluated;
}
set
{
if ((this._IsUserEvaluated != value))
if ((this._IsEvaluated != value))
{
this.OnIsUserEvaluatedChanging(value);
this.OnIsEvaluatedChanging(value);
this.SendPropertyChanging();
this._IsUserEvaluated = value;
this.SendPropertyChanged("IsUserEvaluated");
this.OnIsUserEvaluatedChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_IsDepEvaluated", DbType="Bit")]
public System.Nullable<bool> IsDepEvaluated
{
get
{
return this._IsDepEvaluated;
}
set
{
if ((this._IsDepEvaluated != value))
{
this.OnIsDepEvaluatedChanging(value);
this.SendPropertyChanging();
this._IsDepEvaluated = value;
this.SendPropertyChanged("IsDepEvaluated");
this.OnIsDepEvaluatedChanged();
this._IsEvaluated = value;
this.SendPropertyChanged("IsEvaluated");
this.OnIsEvaluatedChanged();
}
}
}
@@ -18734,8 +18714,6 @@ namespace Model
private string _ViolationDegree;
private string _ShowViolationDegree;
public FC_SESReportView()
{
}
@@ -19059,22 +19037,6 @@ namespace Model
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ShowViolationDegree", DbType="NChar(1)")]
public string ShowViolationDegree
{
get
{
return this._ShowViolationDegree;
}
set
{
if ((this._ShowViolationDegree != value))
{
this._ShowViolationDegree = value;
}
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.FC_SignedContracts")]
+1 -1
View File
@@ -10,7 +10,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Model</RootNamespace>
<AssemblyName>Model</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<SccProjectName>
</SccProjectName>
+1 -1
View File
@@ -27,7 +27,7 @@
</system.Web>
-->
<system.web>
<compilation debug="false" targetFramework="4.6.1"/>
<compilation debug="true" targetFramework="4.8"/>
<httpRuntime targetFramework="4.6.1"/>
</system.web>
<system.webServer>
+2 -2
View File
@@ -14,7 +14,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>WebApi</RootNamespace>
<AssemblyName>WebApi</AssemblyName>
<TargetFrameworkVersion>v4.6.1</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.8</TargetFrameworkVersion>
<MvcBuildViews>false</MvcBuildViews>
<UseIISExpress>true</UseIISExpress>
<Use64BitIISExpress />
@@ -58,9 +58,9 @@
<Reference Include="System.Web.Entity" />
<Reference Include="System.Web.ApplicationServices" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Abstractions" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Routing" />
<Reference Include="System.Xml" />
<Reference Include="System.Configuration" />
@@ -0,0 +1,98 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="FileType.aspx.cs" Inherits="FineUIPro.Web.BaseInfo.FileType" %>
<!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" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" Title="文件类型" Layout="HBox" ShowHeader="false">
<Items>
<f:Grid ID="Grid1" Title="文件类型" ShowHeader="false" EnableCollapse="true" PageSize="15" EnableColumnLines="true"
ShowBorder="true" AllowPaging="true" IsDatabasePaging="true" runat="server" Width="1000px" SortField="FileType"
DataKeyNames="FileTypeId" DataIDField="FileTypeId" OnPageIndexChange="Grid1_PageIndexChange" EnableTextSelection="True" EnableRowSelectEvent="true" OnRowSelect="Grid1_RowSelect">
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="60px" HeaderTextAlign="Center"
TextAlign="Center" />
<f:RenderField Width="150px" ColumnID="FileType" DataField="FileType"
FieldType="String" HeaderText="File Type" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderCheckField Width="90px" ColumnID="IsExport" DataField="IsExport" HeaderText="是否导出" EnableColumnEdit="false">
</f:RenderCheckField>
<f:RenderField Width="300px" ColumnID="Remark" DataField="Remark"
FieldType="String" HeaderText="Remark" HeaderTextAlign="Center" TextAlign="Left" ExpandUnusedSpace="true">
</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="Number of records per page">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
</f:DropDownList>
</PageItems>
</f:Grid>
<f:SimpleForm ID="SimpleForm1" runat="server" ShowBorder="true" ShowHeader="false"
LabelWidth="80px" BodyPadding="5px" Width="400px" RedStarPosition="BeforeText">
<Items>
<f:HiddenField ID="hfFormID" runat="server">
</f:HiddenField>
<f:TextBox ID="txtFileType" Label="File Type" ShowRedStar="true" Required="true"
runat="server" LabelAlign="right" LabelWidth="100px" >
</f:TextBox>
<f:CheckBox ID="cbIsExport" Checked="true" Label="报表导出" runat="server" LabelAlign="Right" LabelWidth="100px"/>
<f:TextArea ID="txtRemark" Label="Remark" runat="server" LabelAlign="Right" MaxLength="500" LabelWidth="100px"></f:TextArea>
</Items>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" runat="server">
<Items>
<f:Button ID="btnNew" Icon="Add" Text="Add" ToolTip="Add" OnClick="btnNew_Click" runat="server">
</f:Button>
<f:Button ID="btnDelete" Enabled="false" ToolTip="Delete" Text="Delete" Icon="Delete" ConfirmText="Make sure to delete the current data?"
OnClick="btnDelete_Click" runat="server">
</f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="Save" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:SimpleForm>
</Items>
</f:Panel>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,120 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractorEvaluation.aspx.cs" Inherits="FineUIPro.Web.Evaluation.ContractorEvaluation" %>
<!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>Frame Contractor Evaluation Form</title>
</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="Region" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="Frame Contractor Evaluation Form" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="ID" DataIDField="ID" EnableColumnLines="true"
AllowSorting="true" SortField="FO_NO" SortDirection="DESC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableRowSelectEvent="true" OnRowSelect="Grid1_RowSelect">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:HiddenField ID="hdID" runat="server"></f:HiddenField>
<f:TextBox ID="txtFO_NO" runat="server" Label="Contract No." EmptyText="Search by Contract No." LabelAlign="Right" NextFocusControl="btnSearch"></f:TextBox>
<f:Button ID="btnSearch" Text="Search" Icon="SystemSearch" runat="server" Size="Medium" CssClass="marginr" OnClick="btnSearch_Click" />
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnEdit" ToolTip="Edit" Text="Edit" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Hidden="true">
</f:Button>
<f:Button ID="btnSendEmail" Icon="Email" runat="server" CssClass="marginr" Text="Send"
OnClick="btnSendEmail_Click" Hidden="true">
</f:Button>
<f:Button ID="btnExport" OnClick="btnExport_Click" runat="server" Text="Export" ToolTip="Export" Hidden="true"
Icon="DoorOut" EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" TextAlign="Center" Locked="true" ColumnID="tfNumber" HeaderText="No" HeaderTextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="300px" ColumnID="Discipline" DataField="Discipline"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="FO_NO" DataField="FO_NO"
SortField="FO_NO" FieldType="String" HeaderText="FO No." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Validate_Date" DataField="Validate_Date"
FieldType="Date" Renderer="Date" HeaderText="Valid Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Expire_Date" DataField="Expire_Date"
FieldType="Date" Renderer="Date" HeaderText="Expiry Date" HeaderTextAlign="Center">
</f:RenderField>
<%--<f:RenderField Width="120px" ColumnID="FOType" DataField="FOType"
HeaderText="FO Type" HeaderTextAlign="Center">
</f:RenderField>--%>
<f:RenderField Width="300px" ColumnID="Contractor" DataField="Contractor"
HeaderText="Contractor" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Main_Coordinator" DataField="Main_Coordinator"
HeaderText="Main Coordinator" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Buyer" DataField="Buyer"
HeaderText="Buyer" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="VolumeAllocation" DataField="VolumeAllocation"
HeaderText="Allocation Percentage" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Spending_commitment" DataField="Spending_commitment"
FieldType="String" HeaderText="Settled + Committed" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Forecasted" DataField="Forecasted"
FieldType="String" HeaderText="Forecasted" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Total" DataField="Total"
FieldType="String" HeaderText="Total" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="YearAvg" DataField="YearAvg"
FieldType="String" HeaderText="Yearly Average" HeaderTextAlign="Center">
</f:RenderField>
</Columns>
<PageItems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<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:Panel>
<f:Window ID="Window1" Title="Frame Contractor Evaluation Form Edit" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="1300px" Height="860px">
</f:Window>
</form>
<script type="text/javascript">
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
function renderSalary(value) {
return F.addCommas(value.toFixed(2));
}
</script>
</body>
</html>
@@ -0,0 +1,305 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractorEvaluationEdit.aspx.cs" Inherits="FineUIPro.Web.Evaluation.ContractorEvaluationEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>项目经理编辑器</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
<%--<script src="../Controls/My97DatePicker/WdatePicker.js" type="text/javascript"></script>--%>
</head>
<body>
<form id="_form1" runat="server">
<f:PageManager ID="PageManager1" runat="server" AutoSizePanelID="SimpleForm1" />
<f:Panel ID="Panel1" BodyPadding="10px" Margin="0 5px 0 0" AutoScroll="true" runat="server" EnableCollapse="true" Title="施工经理编辑器" ShowHeader="false">
<Items>
<f:GroupPanel ID="GroupPanel1" Layout="Anchor" Title="<strong>FC information 框架合同信息</strong>" runat="server">
<Items>
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow ColumnWidths="35% 18% 22% 25%">
<Items>
<f:TextBox ID="txtFo" runat="server" Label="Contract No. </br>合同号" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:Label runat="server" Label="Validity 合同有效期" LabelSeparator="" LabelAlign="Right" LabelWidth="200px"></f:Label>
<f:DatePicker ID="txtValidate_Date" runat="server" Label="From 起" LabelWidth="70px" Readonly="true">
</f:DatePicker>
<f:DatePicker ID="txtExpire_Date" runat="server" Label="止" LabelWidth="160px" Readonly="true">
</f:DatePicker>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="75% 25%">
<Items>
<f:TextBox ID="txtDiscipline" runat="server" Label="FC Discipline </br>框架合同专业" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtApplicable_Area" runat="server" Label="Applicable Area </br>适用范围" Text="BYC" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:HiddenField ID="txtYearDiff" runat="server"></f:HiddenField>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="75% 25%">
<Items>
<f:TextBox ID="txtContractor" runat="server" Label="Contractor Name </br>承包商名称" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtPercentage" runat="server" Label="Allocation Percentage </br>份额百分比" LabelWidth="160px" Readonly="true"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="28% 22% 25% 25%">
<Items>
<f:TextBox ID="txtSpending_commitment" runat="server" Label="Settled + Committed </br>已结算和已发出(CNY)" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:NumberBox ID="txtForecasted" runat="server" Label="Forecasted </br>预计至到期" EmptyText="主协调人填写" DecimalPrecision="2" NoDecimal="false" AutoPostBack="true" OnTextChanged="Forecasted_OnTextChanged"></f:NumberBox>
<f:TextBox ID="txtTotal" runat="server" Label="Total </br>总计" LabelWidth="120px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtYearAvg" runat="server" Label="Yearly Average </br>平均每年" LabelWidth="160px" Readonly="true"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
<f:GroupPanel ID="gpMonthEva" Layout="Anchor" Title=" <strong>Monthly Evaluation Result of FC for the last 2 years</br>近两年框架合同承包商月度评估结果</strong>" runat="server" >
<Items>
<f:Panel ID="Panel8" Layout="HBox" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" ShowGridHeader="false" EnableCollapse="false"
runat="server">
<Columns>
<f:RenderField Width="90px" ColumnID="Years" DataField="Years"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month1" DataField="Month1"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month2" DataField="Month2"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month3" DataField="Month3"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month4" DataField="Month4"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month5" DataField="Month5"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month6" DataField="Month6"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month7" DataField="Month7"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month8" DataField="Month8"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month9" DataField="Month9"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month10" DataField="Month10"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month11" DataField="Month11"></f:RenderField>
<f:RenderField Width="90px" ColumnID="Month12" DataField="Month12"></f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Panel>
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanel3" Layout="Anchor" Title="<strong>Commercial Evaluation 商务评价(采购填写)</strong>" runat="server">
<Items>
<f:Form ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:TextArea ID="txtReviewOfFC" runat="server" Label="Review of FC Bidding in the Past 原框架合同竞标过程回顾" LabelWidth="240px" Height="60px"></f:TextArea>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="10% 35% 35% 20%">
<Items>
<f:Label ID="lbPriceEvaluation" runat="server" Label="Price Evaluation 价格评估" LabelAlign="Right" LabelWidth="240px"></f:Label>
<f:TextBox ID="txtPriceEvaluation1" runat="server" Label="Reference1 参照1" LabelWidth="140px"></f:TextBox>
<f:TextBox ID="txtPriceEvaluation2" runat="server" Label="Reference1 参照2" LabelWidth="160px"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow >
<Items>
<f:CheckBoxList ID="cbPriceLevel" runat="server" Label="Price Level 价格水平" LabelWidth="240px">
<Items>
<f:CheckItem Text="很高 Very high" Value="1" />
<f:CheckItem Text="较高 Higher" Value="2"/>
<f:CheckItem Text="适宜 Moderate" Value="3"/>
<f:CheckItem Text="较低 Lower" Value="4"/>
<f:CheckItem Text="很低 Very low" Value="5"/>
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow>
<Items>
<f:TextArea ID="txtEnumeration" runat="server" Label="Any other potential contractors? Authority, OEM? Please list if any.</br>有无其他潜在承包商?政府类,OEM?若有,请列举" LabelWidth="240px" Height="60px"></f:TextArea>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
<f:GroupPanel runat="server" Title="<strong>Technical Evaluation 技术评价</strong>">
<Items>
<f:GroupPanel ID="GroupPanel2" Layout="Anchor" Title="<strong>Fill in by Contract Admin 由合同员填写</strong>" runat="server">
<Items>
<f:Form ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow ColumnWidths="35% 25% 45%">
<Items>
<f:CheckBoxList ID="cbInquiry" runat="server" Label="Interview 约谈 " LabelWidth="240px">
<Items>
<f:CheckItem Text="无No" Value="False" />
<f:CheckItem Text="有Yes" Value="True" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
<f:NumberBox ID="numInquiryTime" runat="server" Label="次数Times" NoDecimal="true" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="35% 25% 45%">
<Items>
<f:CheckBoxList ID="cbNCR" runat="server" Label="NCR review NCR回顾 " LabelWidth="240px">
<Items>
<f:CheckItem Text="无No" Value="False" />
<f:CheckItem Text="有Yes" Value="True" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
<f:NumberBox ID="numNCRTime" runat="server" Label="次数Times" NoDecimal="true" NoNegative="true"></f:NumberBox>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow ColumnWidths="90% 10%">
<Items>
<f:CheckBoxList ID="cbAuditResult" runat="server" Label="FC EHSQ Audit result</br>框架合同EHSQ审计结果" LabelWidth="240px">
<Items>
<f:CheckItem Text="绿区" Value="1" />
<f:CheckItem Text="黄绿区" Value="2" />
<f:CheckItem Text="黄区" Value="3" />
<f:CheckItem Text="红黄区" Value="4" />
<f:CheckItem Text="红区" Value="5" />
<f:CheckItem Text="不适用" Value="6" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
<%-- <f:GroupPanel ID="GroupPanel4" Layout="Anchor" Title="<strong>Fill in by CT/K Representative 由CT/K代表填写</strong>" runat="server">
<Items>
<f:Form ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow ColumnWidths="35% 65%">
<Items>
<f:CheckBoxList ID="cbBoQIsAudit" runat="server" Label="CT/K BoQ Audit Comments</br>工作量审查问题回顾 " LabelWidth="240px">
<Items>
<f:CheckItem Text="无No" Value="False" />
<f:CheckItem Text="有Yes" Value="True" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
<f:TextBox ID="txtBoQ" runat="server" Label="描述"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>--%>
<f:GroupPanel ID="GroupPanel5" Layout="Anchor" Title="<strong>Fill in by CTS Representative 由CTS代表填写</strong>" runat="server">
<Items>
<f:Form ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow >
<Items>
<f:TextBox ID="txtSafetyBonus" runat="server" Label="Bonus of Safety Performance</br>安全业绩加分值" LabelWidth="240px"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
<f:GroupPanel ID="GroupPanel6" Layout="Anchor" Title="<strong>Fill in by Main Coordinator 由主协调员填写</strong>" runat="server">
<Items>
<f:Form ShowBorder="false" ShowHeader="false" AutoScroll="true" runat="server"
RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow ColumnWidths="35% 25% 45%">
<Items>
<f:CheckBoxList ID="cbIsOthers" runat="server" Label=" Others(e.g. major incident)</br>其他(如:重大事件)" LabelWidth="240px">
<Items>
<f:CheckItem Text="无No" Value="False" />
<f:CheckItem Text="有Yes" Value="True" />
</Items>
<Listeners>
<f:Listener Event="change" Handler="onCheckBoxListChange" />
</Listeners>
</f:CheckBoxList>
<f:TextBox ID="txtOtherDef" runat="server" Label="描述"></f:TextBox>
<%-- <f:NumberBox ID="numOthers" runat="server" Label="次数Times" NoDecimal="true" NoNegative="true"></f:NumberBox>--%>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow>
<Items>
<f:TextBox ID="txtTechnicalBonus" runat="server" Label="Technical Bonus and Malus</br>技术加值及减值" LabelWidth="240px"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Rows>
<f:FormRow>
<Items>
<f:TextArea ID="txtProposed" runat="server" Label="The contract management team's evaluation on the contractor's performance in the contract period.</br>合同管理小组对该承包商在本合同期表现的评价" LabelWidth="240px" Height="100px"></f:TextArea>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
</Items>
</f:GroupPanel>
</Items>
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server" ToolbarAlign="Right" Position="Bottom">
<Items>
<f:Button ID="btnSave" Icon="SystemSave" Text="Save" runat="server" ToolTip="Save" ValidateForms="SimpleForm1"
OnClick="btnSave_Click" >
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="Close" ToolTip="Close" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Panel>
</form>
<script type="text/javascript">
// 同时只能选中一项
function onCheckBoxListChange(event, checkbox, isChecked) {
var me = this;
// 当前操作是:选中
if (isChecked) {
// 仅选中这一项
me.setValue(checkbox.getInputValue());
}
__doPostBack('', 'CheckBoxList1Change');
}
</script>
</body>
</html>
@@ -0,0 +1,181 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CSafePunish.aspx.cs" Inherits="FineUIPro.Web.SES.CSafePunish" %>
<!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>Contractor Safety Punishment</title>
</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="Region" BoxConfigAlign="Stretch">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="Contractor Safety Punishment" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="PunishmentId" DataIDField="PunishmentId" EnableColumnLines="true"
ClicksToEdit="2" AllowSorting="true" SortField="PunishDate" SortDirection="DESC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:HiddenField ID="hdID" runat="server"></f:HiddenField>
<f:TextBox ID="txtFO_NO" runat="server" Label="Contract No." EmptyText="Search by Contract No." LabelAlign="Right" NextFocusControl="btnSearch"></f:TextBox>
<f:DropDownList ID="drpContractAdmin" runat="server" Label="Contract Admin" LabelWidth="140px" LabelAlign="Right" NextFocusControl="btnSearch"></f:DropDownList>
<f:DatePicker ID="txtPunishDate" runat="server" Label="Date" DateFormatString="yyyy-MM" DisplayType="Month" LabelWidth="80px" Width="180px" LabelAlign="Right" ></f:DatePicker>
<f:Button ID="btnSearch" Text="Search" Icon="SystemSearch" runat="server" Size="Medium" CssClass="marginr" OnClick="btnSearch_Click" />
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnNew" ToolTip="Add" Text="Add" Icon="Add" EnablePostBack="false" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnEdit" ToolTip="Modify" Text="Modify" Icon="Pencil" runat="server" OnClick="btnEdit_Click" Hidden="true">
</f:Button>
<f:Button ID="btnDelete" ToolTip="Delete" Text="Delete" Icon="Delete" ConfirmText="Make sure to delete the current data?" OnClick="btnDelete_Click"
runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnEmail" Icon="email" runat="server" ToolTip="Send Email" Text="Email" ValidateForms="Panel1"
OnClick="btnEmail_Click" ConfirmText="Are you sure you want to send the email" ConfirmTarget="Top" Hidden="true">
</f:Button>
<f:Button ID="btnExport" OnClick="btnExport_Click" runat="server" Text="Export" ToolTip="Export" Hidden="true"
Icon="DoorOut" EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" TextAlign="Center" Locked="true" ColumnID="tfNumber" HeaderText="No" HeaderTextAlign="Center">
<ItemTemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="100px" ColumnID="PunishDate" DataField="PunishDate"
FieldType="Date" Renderer="Date" HeaderText="Date" HeaderTextAlign="Center">
</f:RenderField>
<f:BoundField Width="100px" ColumnID="PunishTime" DataField="PunishTime" DataFormatString="{0:HH:mm}"
HeaderText="Time" HeaderTextAlign="Center"></f:BoundField>
<f:RenderField Width="130px" ColumnID="FO_NO" DataField="FO_NO"
SortField="FO_NO" FieldType="String" HeaderText="Contract No." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="360px" ColumnID="Discipline" DataField="Discipline"
HeaderText="Discipline" HeaderTextAlign="Center" FieldType="String">
</f:RenderField>
<f:RenderField Width="360px" ColumnID="Contractor" DataField="Contractor"
HeaderText="Contractor" HeaderTextAlign="Center" FieldType="String">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Location" DataField="Location"
FieldType="String" HeaderText="Location" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Description" DataField="Description"
HeaderText="Violation Description" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Company" DataField="Company"
FieldType="Float" HeaderText="Company</br>(RMB)" HeaderTextAlign="Center" RendererFunction="renderSalary">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Individual" DataField="Individual"
FieldType="Float" HeaderText="Individual</br>(RMB)" HeaderTextAlign="Center" RendererFunction="renderSalary">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Backcharge" DataField="Backcharge"
FieldType="Float" HeaderText="Backcharge</br>(RMB)" HeaderTextAlign="Center" RendererFunction="renderSalary">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ViolationDegree" DataField="ViolationDegree"
FieldType="String" HeaderText="Violation</br> Degree" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Contract_Admin" DataField="Contract_Admin"
FieldType="String" HeaderText="Contract</br> Admin" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Main_Coordinator" DataField="Main_Coordinator"
FieldType="String" HeaderText="Main </br>Coordinator" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MCDept" DataField="MCDept"
FieldType="String" HeaderText="M.C.Dept" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="User_Representative" DataField="User_Representative"
FieldType="String" HeaderText="User </br>Representative" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="BYCRU" DataField="BYCRU"
FieldType="String" HeaderText="BYC Resp. Dept." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="BYCRULeader" DataField="BYCRULeader"
FieldType="String" HeaderText="BYC Resp Manager" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Violation_Inspector_Name" DataField="Violation_Inspector_Name"
FieldType="String" HeaderText="Violation </br>Inspector" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="InspectionDep" DataField="InspectionDep"
FieldType="String" HeaderText="Inspection </br>Department" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="SES_No" DataField="SES_No"
FieldType="String" HeaderText="Backcharge </br>SES No." HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="CompletionDate" DataField="CompletionDate"
FieldType="Date" Renderer="Date" HeaderText="Backcharge</br>Completion Date" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ViolationRelatedSes" DataField="ViolationRelatedSes"
FieldType="String" HeaderText="Violation Related SES" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="100px" ColumnID="EmailIsSend" DataField="EmailIsSend"
FieldType="String" HeaderText="If send mail" HeaderTextAlign="Center">
</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="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<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:Panel>
<f:Window ID="Window1" Title="Contractor Safety Punishment Edit" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="960px" Height="660px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnMenuEdit_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnMenuDelete_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete Contractor Safety Punishment?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" EnablePostBack="true"
Icon="Find" runat="server" Text="View">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
function renderSalary(value) {
return F.addCommas(value.toFixed(2));
}
</script>
</body>
</html>
@@ -0,0 +1,144 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="CSafePunishEdit.aspx.cs" Inherits="FineUIPro.Web.SES.CSafePunishEdit" %>
<!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>Contractor Safety Punishment Edit</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" OnCustomEvent="PageManager1_CustomEvent"/>
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow >
<Items>
<f:DatePicker ID="txtPunishDate" runat="server" Label="Date" LabelAlign="Right" LabelWidth="160px" DateFormatString="yyyy-MM-dd" Required="true" ShowRedStar="true"></f:DatePicker>
<f:DatePicker ID="txtPunishTime" runat="server" Label="Time" LabelAlign="Right" LabelWidth="160px" DateFormatString="HH:mm" DisplayType="Time"></f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpContractor" runat="server" Label="Contractor" LabelAlign="Right" LabelWidth="160px" ShowRedStar="true" EnableEdit="true" AutoPostBack="true" OnSelectedIndexChanged="drpContractor_SelectedIndexChanged">
</f:DropDownList>
<f:DropDownList ID="drpFO_No" runat="server" Label="Contract No." EnableEdit="true" LabelAlign="Right" LabelWidth="160px" ShowRedStar="true" AutoPostBack="true" OnSelectedIndexChanged="drpFO_No_SelectedIndexChanged"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtDiscispline" runat="server" Label="Discispline" LabelWidth="160px" Readonly="true"></f:TextBox>
<f:TextBox ID="txtLocation" runat="server" Label="Location" LabelAlign="Right" MaxLength="500" LabelWidth="160px">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtDescription" runat="server" Label="Violation Description" LabelAlign="Right" MaxLength="500" LabelWidth="160px">
</f:TextBox>
<f:NumberBox ID="txtCompany" runat="server" Label="Company (RMB)" LabelAlign="Right" LabelWidth="160px" DecimalPrecision="2" Required="true" ShowRedStar="true" AutoPostBack="true" OnTextChanged="txtPunish_OnTextChanged"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:NumberBox ID="txtIndividual" runat="server" Label="Individual (RMB)" LabelAlign="Right" DecimalPrecision="2" LabelWidth="160px" Required="true" ShowRedStar="true" AutoPostBack="true" OnTextChanged="txtPunish_OnTextChanged"></f:NumberBox>
<f:NumberBox ID="txtBackcharge" runat="server" Label="Backcharge (RMB)" LabelAlign="Right" DecimalPrecision="2" LabelWidth="160px" Readonly="true"></f:NumberBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpViolationDegree" runat="server" Label="Violation Degree" LabelAlign="Right" LabelWidth="160px" Required="true" ShowRedStar="true">
<f:ListItem Value="1" Text="一般违章" />
<f:ListItem Value="2" Text="严重违章" />
<f:ListItem Value="3" Text="零容忍违章" />
</f:DropDownList>
<f:TextBox ID="txtContractAdmin" runat="server" Label="Contract Admin" LabelAlign="Right" LabelWidth="160px" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtMainCoordinator" runat="server" Label="Main Coordinator" LabelAlign="Right" LabelWidth="160px" Readonly="true">
</f:TextBox>
<f:TextBox ID="txtMCDept" runat="server" Label="M.C.Dept" LabelAlign="Right" LabelWidth="160px" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtUserRepresentative" runat="server" Label="User Representative" LabelAlign="Right" LabelWidth="160px" Readonly="true">
</f:TextBox>
<f:DropDownList ID="drpBYC_RU" runat="server" Label="BYC Resp. Dept." EnableGroup="true" EnableEdit="true" LabelAlign="Right" LabelWidth="160px" Required="true" ShowRedStar="true"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="drpViolationInspector" runat="server" Label="Violation Inspector" EnableEdit="true" EnableGroup="true" LabelAlign="Right" LabelWidth="160px"
AutoPostBack="true" OnSelectedIndexChanged="drpViolationInspector_SelectedIndexChanged" Required="true" ShowRedStar="true"></f:DropDownList>
<f:TextBox ID="txtInspectionDep" runat="server" Label="Inspection Department" LabelAlign="Right" LabelWidth="160px" Readonly="true">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:GroupPanel ID="GPRole" Title="由 Contract Administrator 角色填写" Layout="Table" runat="server" >
<Items>
<f:TextBox ID="txtSESNo" runat="server" Label="Backcharge SES No." LabelAlign="Right" LabelWidth="170px" Width="455px" ShowRedStar="true" >
</f:TextBox>
<f:DatePicker ID="txtCompletionDate" runat="server" Label="Backcharge Completion Date" LabelAlign="Right" LabelWidth="230px" Width="470px" ShowRedStar="true"></f:DatePicker>
</Items>
</f:GroupPanel>
</Items>
</f:FormRow>
<f:FormRow >
<Items>
<f:GroupPanel ID="GPDep" Title="End UserBYC Resp. Dept.部门)填写" Layout="Anchor" runat="server" >
<Items>
<f:Form ShowBorder="false" ShowHeader="false" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow ColumnWidths="45% 55%">
<Items>
<f:DropDownList ID="drpSelectYesNo" runat="server" LabelAlign="Right" Label="是否有关联SES" LabelWidth="160px" Width="400px" AutoPostBack="true" OnSelectedIndexChanged="drpSelectYesNo_SelectedIndexChanged" ShowRedStar="true">
<f:ListItem Value="" Text="-请选择-" />
<f:ListItem Value="True" Text="是" />
<f:ListItem Value="False" Text="否" />
</f:DropDownList>
<f:TextBox ID="txtViolationRelatedSes" runat="server" Label="Violation Related SES" LabelAlign="Right" LabelWidth="230px" Width="500px" >
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextBox ID="txtDef" runat="server" Label="描述" LabelWidth="160px"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:GroupPanel>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="Save" ToolTip="Save" ValidateForms="SimpleForm1"
OnClick="btnSave_Click" Hidden="true">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="Close" ToolTip="Close" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<script type="text/javascript">
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</form>
</body>
</html>
@@ -0,0 +1,888 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractorQualification.aspx.cs" Inherits="FineUIPro.Web.SES.ContractorQualification" %>
<!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 {
color: #A52A2A;
}
.f-grid-row.color2,
.f-grid-row.color2 .f-icon,
.f-grid-row.color2 a {
color: #A9A9A9;
}
.colorRed {
color: #FF0000;
}
</style>
</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="Region" BoxConfigAlign="Stretch">
<Items>
<f:Panel runat="server" ID="panelTopRegion" RegionPosition="Center"
Title="中间面板" ShowBorder="false" ShowHeader="false" Layout="VBox">
<Items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="SES Related Data" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="ID" EnableColumnLines="true" DataIDField="ID" AllowSorting="true"
SortField="FC_Status" SortDirection="DESC" OnSort="Grid1_Sort"
AllowPaging="true" IsDatabasePaging="true" PageSize="15" OnPageIndexChange="Grid1_PageIndexChange"
AllowFilters="true" OnFilterChange="Grid1_FilterChange" OnRowDataBound="Grid1_RowDataBound"
EnableRowSelectEvent="true" OnRowSelect="Grid1_RowSelect" EnableRowDoubleClickEvent="true"
OnRowDoubleClick="Grid1_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server">
<Items>
<f:HiddenField ID="hdID" runat="server"></f:HiddenField>
<f:HiddenField runat="server" ID="hdItemsString"></f:HiddenField>
<f:HiddenField runat="server" ID="hdConstRecords"></f:HiddenField>
<f:HiddenField runat="server" ID="hdFoNo"></f:HiddenField>
<f:HiddenField runat="server" ID="hdDiscipline"></f:HiddenField>
<f:HiddenField runat="server" ID="hdContractor"></f:HiddenField>
<f:HiddenField runat="server" ID="hdContractAdmin"></f:HiddenField>
<f:HiddenField runat="server" ID="hdBuyer"></f:HiddenField>
<f:HiddenField runat="server" ID="hdMainCoord"></f:HiddenField>
<f:HiddenField runat="server" ID="hdMCDepartment"></f:HiddenField>
<f:HiddenField runat="server" ID="hdFCStatus"></f:HiddenField>
<f:HiddenField runat="server" ID="hdFoType"></f:HiddenField>
<f:HiddenField runat="server" ID="hdQuetype"></f:HiddenField>
<f:DropDownList ID="drpValidContracts" runat="server" AutoPostBack="true" OnSelectedIndexChanged="DropDownList_SelectedIndexChanged">
<f:ListItem Value="1" Text="Valid Contracts" />
<f:ListItem Value="2" Text="All Contracts" />
</f:DropDownList>
<f:TextBox ID="txtFO" runat="server" Label="FO" EmptyText="Search by FO." LabelAlign="Right" NextFocusControl="btnFind" LabelWidth="80px"></f:TextBox>
<f:DropDownList ID="drpContractor" runat="server" Label="Contractor" EnableEdit="true" LabelAlign="Right" NextFocusControl="btnFind"></f:DropDownList>
<f:Button ID="btnFind" runat="server" OnClick="btnFind_Click" Icon="SystemSearch"></f:Button>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnSearch" runat="server" Icon="SystemSearch" Text="Search" OnClick="btnSearch_Click"></f:Button>
<f:Button ID="btnExport" OnClick="btnExport_Click" runat="server" Text="Export" ToolTip="Export"
Icon="DoorOut" EnableAjax="false" DisableControlBeforePostBack="true"></f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:RowNumberField EnablePagingNumber="true" Width="60px" TextAlign="Center" />
<f:RenderField Width="120px" ColumnID="FO_NO" DataField="FO_NO"
SortField="FO_NO" FieldType="String" HeaderText="FO No." HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList4" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="300px" ColumnID="Discipline" DataField="Discipline"
FieldType="String" HeaderText="Discipline" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList26" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="FOType" DataField="FOType"
HeaderText="FO Type" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList23" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Pricing_Scheme" DataField="Pricing_Scheme"
HeaderText="Pricing Scheme" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList3" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Contractor" DataField="Contractor"
HeaderText="Contractor" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList2" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Vendor_NO" DataField="Vendor_NO"
FieldType="String" HeaderText="Vendor NO." HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList9" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Item" DataField="Item"
FieldType="String" HeaderText="Item" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList5" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="140px" ColumnID="DisciplineCategory" DataField="DisciplineCategory"
FieldType="String" HeaderText="Discipline Category" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList11" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="90px" ColumnID="Currency" DataField="Currency"
FieldType="String" HeaderText="Currency" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList10" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Material_Group" DataField="Material_Group"
FieldType="String" HeaderText="Material Group" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList6" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Purchase_Group" DataField="Purchase_Group"
FieldType="String" HeaderText="Purchase Group" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList7" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Cost_Element" DataField="Cost_Element"
FieldType="String" HeaderText="Cost Element" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList8" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Type" DataField="Type"
FieldType="String" HeaderText="Service Type" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList12" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Contract_Admin" DataField="Contract_Admin"
FieldType="String" HeaderText="Contract Admin" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList13" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Cost_Checker" DataField="Cost_Checker"
FieldType="String" HeaderText="Cost Checker" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList1" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Buyer" DataField="Buyer"
FieldType="String" HeaderText="Buyer" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList14" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="130px" ColumnID="Main_Coordinator" DataField="Main_Coordinator"
FieldType="String" HeaderText="Main Coordinator" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList15" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="MCDept" DataField="MCDept"
FieldType="String" HeaderText="M.C.Dept." HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList17" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="140px" ColumnID="User_Representative" DataField="User_Representative"
FieldType="String" HeaderText="User Representative" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList16" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Validate_Date" DataField="Validate_Date"
FieldType="Date" Renderer="Date" HeaderText="Valid Date" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList18" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="100px" ColumnID="Expire_Date" DataField="Expire_Date"
FieldType="Date" Renderer="Date" HeaderText="Expiry Date" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList19" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="90px" ColumnID="FC_Status" DataField="FC_Status"
FieldType="String" HeaderText="FC Status" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList20" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Contract_Person" DataField="Contract_Person"
FieldType="String" HeaderText="Contact Person" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList21" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="180px" ColumnID="Contract_Tel" DataField="Contract_Tel"
FieldType="String" HeaderText="Tel." HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList22" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="130px" ColumnID="StrVolumeAllocation" DataField="StrVolumeAllocation"
FieldType="String" HeaderText="Volume Allocation" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList24" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Actual_Budget" DataField="Actual_Budget"
FieldType="String" HeaderText="Contract Budget" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList25" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ConnectedTransaction" DataField="ConnectedTransaction"
FieldType="String" HeaderText="Affiliated Transaction" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList27" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="140px" ColumnID="ExceedLimit" DataField="ExceedLimit"
FieldType="String" HeaderText="Exceed limit(day)" HeaderTextAlign="Center" >
</f:RenderField>
<f:RenderField Width="120px" ColumnID="CheckedValue" DataField="CheckedValue"
FieldType="Float" HeaderText="Checked Value" HeaderTextAlign="Center" EnableFilter="true" RendererFunction="renderSalaryFloat">
<Editor>
<f:NumberBox runat="server" EnableCommas="true" Readonly="true" />
</Editor>
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList28" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="RemainingBudget" DataField="RemainingBudget"
FieldType="Float" HeaderText="Remaining Budget" HeaderTextAlign="Center" EnableFilter="true" RendererFunction="renderSalaryFloat">
<Editor>
<f:NumberBox runat="server" EnableCommas="true" Readonly="true" />
</Editor>
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList29" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="RemainingBudgetRate" DataField="RemainingBudgetRate"
FieldType="String" HeaderText="Remaining Budget%" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList30" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="RemainingDuration" DataField="RemainingDuration"
FieldType="String" HeaderText="Remaining Duration%" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList31" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="Email" DataField="Email"
FieldType="String" HeaderText="Email" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList32" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="MainHead" DataField="MainHead"
FieldType="String" HeaderText="主要负责人" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList34" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="MainHeadPosition" DataField="MainHeadPosition"
FieldType="String" HeaderText="主要负责人职位" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList35" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="MainHeadContact" DataField="MainHeadContact"
FieldType="String" HeaderText="主要负责人联系方式" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList36" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="SafetyOfficer" DataField="SafetyOfficer"
FieldType="String" HeaderText="安全负责人" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList37" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="SafetyOfficerPosition" DataField="SafetyOfficerPosition"
FieldType="String" HeaderText="安全负责人职位" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList38" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="SafetyOfficerContact" DataField="SafetyOfficerContact"
FieldType="String" HeaderText="安全负责人联系方式" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList39" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectManager" DataField="ProjectManager"
FieldType="String" HeaderText="项目经理" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList40" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectManagerPosition" DataField="ProjectManagerPosition"
FieldType="String" HeaderText="项目经理职位" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList41" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ProjectManagerContact" DataField="ProjectManagerContact"
FieldType="String" HeaderText="项目经理联系方式" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList42" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</f:RenderField>
<f:RenderField Width="120px" ColumnID="ConstRecords" DataField="ConstRecords"
FieldType="String" HeaderText="Const.Records" HeaderTextAlign="Center" EnableFilter="true">
<Filter EnableMultiFilter="true" ShowMatcher="true">
<Operator>
<f:DropDownList ID="DropDownList33" runat="server">
<f:ListItem Text="equal to" Value="equal" />
<f:ListItem Text="include" Value="contain" Selected="true" />
</f:DropDownList>
</Operator>
</Filter>
</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="Number of records per page:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<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:Panel>
<f:Panel runat="server" ID="panelBottomRegion" RegionPosition="Bottom" RegionSplit="true" RegionSplitWidth="20px" EnableCollapse="true" Height="300px"
Title="底部面板" ShowBorder="false" ShowHeader="false" BodyPadding="1px" Layout="Fit">
<Items>
<f:TabStrip ID="TabStrip1" ShowBorder="false" TabPosition="Top"
EnableTabCloseMenu="false" ActiveTabIndex="0" runat="server" AutoPostBack="true" OnTabIndexChanged="TabStrip1_TabIndexChanged">
<Tabs>
<f:Tab ID="TabBL" Title="营业执照" BodyPadding="1px" Layout="VBox" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="GridBL" ShowBorder="true" ShowHeader="false" Title="Business License" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="QueId" AllowCellEditing="true" EnableColumnLines="true"
DataIDField="QueId" EnableRowDoubleClickEvent="true" OnRowDoubleClick="GridBL_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtQueName1" runat="server" Label="资质名称"></f:TextBox>
<f:Button ID="btnQueFind1" runat="server" OnClick="btnQueFind1_Click" Icon="SystemSearch"></f:Button>
<f:ToolbarFill ID="ToolbarFill2" runat="server"></f:ToolbarFill>
<f:Button ID="AddQue1" ToolTip="Add" Text="Add" Icon="Add" OnClick="AddQue1_Click" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnOut1" OnClick="btnOut1_Click" runat="server" Text="Export" Icon="TableGo" EnableAjax="false" DisableControlBeforePostBack="false" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField Width="50px" ColumnID="tfNumber" TextAlign="Center" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="labNumber1" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="180px" ColumnID="QueName" DataField="QueName" FieldType="String" HeaderText="资质名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="QueDef" DataField="QueDef" FieldType="String" HeaderText="资质特别说明" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitStartDate" DataField="LimitStartDate" FieldType="String" HeaderText="有效期开始时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitEndDate" DataField="LimitEndDate" FieldType="String" HeaderText="有效期到期时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="tfAttachUrl" HeaderText="附件查看" Width="300px" HeaderTextAlign="Center" TextAlign="Left" >
<ItemTemplate>
<asp:LinkButton ID="lbtnUrl1" runat="server" CommandArgument='<%# Bind("AttachUrl") %>'
ToolTip="附件查看" EnableAjax="false" Height="20px"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu1" />
</Listeners>
</f:Grid>
</Items>
</f:Tab>
<f:Tab ID="TabPQ" Title="专业资质" BodyPadding="1px" Layout="VBox" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="GridPQ" ShowBorder="true" ShowHeader="false" Title="Professional Qualification" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="QueId" AllowCellEditing="true" EnableColumnLines="true"
DataIDField="QueId" EnableRowDoubleClickEvent="true" OnRowDoubleClick="GridPQ_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar3" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtQueName2" runat="server" Label="资质名称"></f:TextBox>
<f:Button ID="btnQueFind2" runat="server" OnClick="btnQueFind2_Click" Icon="SystemSearch"></f:Button>
<f:ToolbarFill ID="ToolbarFill3" runat="server"></f:ToolbarFill>
<f:Button ID="AddQue2" ToolTip="Add" Text="Add" Icon="Add" OnClick="AddQue2_Click" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnOut2" OnClick="btnOut2_Click" runat="server" Text="Export" Icon="TableGo" EnableAjax="false" DisableControlBeforePostBack="false" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" TextAlign="Center" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="labNumber2" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="180px" ColumnID="QueName" DataField="QueName" FieldType="String" HeaderText="资质名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="QueDef" DataField="QueDef" FieldType="String" HeaderText="资质特别说明" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitStartDate" DataField="LimitStartDate" FieldType="String" HeaderText="有效期开始时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitEndDate" DataField="LimitEndDate" FieldType="String" HeaderText="有效期到期时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="tfAttachUrl" HeaderText="附件查看" Width="300px" HeaderTextAlign="Center" TextAlign="Left" >
<ItemTemplate>
<asp:LinkButton ID="lbtnUrl2" runat="server" CommandArgument='<%# Bind("AttachUrl") %>'
ToolTip="附件查看" EnableAjax="false" Height="20px"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu2" />
</Listeners>
</f:Grid>
</Items>
</f:Tab>
<f:Tab ID="TabSQ" Title="安全资质" BodyPadding="1px" Layout="VBox" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="GridSQ" ShowBorder="true" ShowHeader="false" Title="Safety Qualification" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="QueId" AllowCellEditing="true" EnableColumnLines="true"
DataIDField="QueId" EnableRowDoubleClickEvent="true" OnRowDoubleClick="GridSQ_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar4" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtQueName3" runat="server" Label="资质名称"></f:TextBox>
<f:Button ID="btnQueFind3" runat="server" OnClick="btnQueFind3_Click" Icon="SystemSearch"></f:Button>
<f:ToolbarFill ID="ToolbarFill4" runat="server"></f:ToolbarFill>
<f:Button ID="AddQue3" ToolTip="Add" Text="Add" Icon="Add" OnClick="AddQue3_Click" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnOut3" OnClick="btnOut3_Click" runat="server" Text="Export" Icon="TableGo" EnableAjax="false" DisableControlBeforePostBack="false" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" TextAlign="Center" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="labNumber3" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="180px" ColumnID="QueName" DataField="QueName" FieldType="String" HeaderText="资质名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="QueDef" DataField="QueDef" FieldType="String" HeaderText="资质特别说明" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitStartDate" DataField="LimitStartDate" FieldType="String" HeaderText="有效期开始时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitEndDate" DataField="LimitEndDate" FieldType="String" HeaderText="有效期到期时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="tfAttachUrl" HeaderText="附件查看" Width="300px" HeaderTextAlign="Center" TextAlign="Left" >
<ItemTemplate>
<asp:LinkButton ID="lbtnUrl3" runat="server" CommandArgument='<%# Bind("AttachUrl") %>'
ToolTip="附件查看" EnableAjax="false" Height="20px"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu3" />
</Listeners>
</f:Grid>
</Items>
</f:Tab>
<f:Tab ID="TabGC" Title="环保资质" BodyPadding="1px" Layout="VBox" runat="server" AutoScroll="true">
<Items>
<f:Grid ID="GridGC" ShowBorder="true" ShowHeader="false" Title="Green Credential" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="QueId" AllowCellEditing="true" EnableColumnLines="true"
DataIDField="QueId" EnableRowDoubleClickEvent="true" OnRowDoubleClick="GridGC_RowDoubleClick">
<Toolbars>
<f:Toolbar ID="Toolbar5" Position="Top" runat="server">
<Items>
<f:TextBox ID="txtQueName4" runat="server" Label="资质名称"></f:TextBox>
<f:Button ID="Button1" runat="server" OnClick="btnQueFind3_Click" Icon="SystemSearch"></f:Button>
<f:ToolbarFill ID="ToolbarFill5" runat="server"></f:ToolbarFill>
<f:Button ID="AddQue4" ToolTip="Add" Text="Add" Icon="Add" OnClick="AddQue4_Click" runat="server" Hidden="true">
</f:Button>
<f:Button ID="btnOut4" OnClick="btnOut4_Click" runat="server" Text="Export" Icon="TableGo" EnableAjax="false" DisableControlBeforePostBack="false" Hidden="true">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" TextAlign="Center" HeaderText="序号">
<ItemTemplate>
<asp:Label ID="labNumber4" runat="server" Text='<%# Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="180px" ColumnID="QueName" DataField="QueName" FieldType="String" HeaderText="资质名称" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="300px" ColumnID="QueDef" DataField="QueDef" FieldType="String" HeaderText="资质特别说明" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitStartDate" DataField="LimitStartDate" FieldType="String" HeaderText="有效期开始时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="130px" ColumnID="LimitEndDate" DataField="LimitEndDate" FieldType="String" HeaderText="有效期到期时间" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:RenderField Width="160px" ColumnID="Remark" DataField="Remark" FieldType="String" HeaderText="备注" HeaderTextAlign="Center" TextAlign="Left">
</f:RenderField>
<f:TemplateField ColumnID="tfAttachUrl" HeaderText="附件查看" Width="300px" HeaderTextAlign="Center" TextAlign="Left" >
<ItemTemplate>
<asp:LinkButton ID="lbtnUrl4" runat="server" CommandArgument='<%# Bind("AttachUrl") %>'
ToolTip="附件查看" EnableAjax="false" Height="20px"></asp:LinkButton>
</ItemTemplate>
</f:TemplateField>
</Columns>
<Listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu4" />
</Listeners>
</f:Grid>
</Items>
</f:Tab>
</Tabs>
</f:TabStrip>
</Items>
</f:Panel>
</Items>
</f:Panel>
<f:Window ID="Window0" Title="FC List" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" IsModal="true"
Width="1400px" Height="660px">
</f:Window>
<f:Window ID="Window1" Title="营业执照" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="720px" Height="480px">
</f:Window>
<f:Window ID="Window3" Title="Search" Hidden="true" EnableIFrame="true" EnableMaximize="false"
Target="Parent" EnableResize="true" runat="server" IsModal="true" Width="600px"
Height="520px" OnClose="Window3_Close">
</f:Window>
<f:Window ID="WindowAtt" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px" OnClose="WindowAtt_Close"
Height="500px">
</f:Window>
<f:Window ID="WindowCopy" Title="拷贝资质" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="true" runat="server" OnClose="Window1_Close" IsModal="true"
Width="360px" Height="240px">
</f:Window>
<f:Menu ID="Menu0" runat="server">
<f:MenuButton ID="btnMenuCopy" OnClick="btnMenuCopy_Click" EnablePostBack="true"
Icon="PageCopy" runat="server" Text="Copy">
</f:MenuButton>
<f:MenuButton ID="btnMenuView" OnClick="btnMenuView_Click" EnablePostBack="true"
Icon="Find" runat="server" Text="View">
</f:MenuButton>
</f:Menu>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit1" OnClick="btnMenuEdit1_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete1" OnClick="btnMenuDelete1_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
</f:Menu>
<f:Menu ID="Menu2" runat="server">
<f:MenuButton ID="btnMenuEdit2" OnClick="btnMenuEdit2_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete2" OnClick="btnMenuDelete2_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
</f:Menu>
<f:Menu ID="Menu3" runat="server">
<f:MenuButton ID="btnMenuEdit3" OnClick="btnMenuEdit3_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete3" OnClick="btnMenuDelete3_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row ?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
</f:Menu>
<f:Menu ID="Menu4" runat="server">
<f:MenuButton ID="btnMenuEdit4" OnClick="btnMenuEdit4_Click" EnablePostBack="true"
Icon="BulletEdit" runat="server" Text="Modify" Hidden="true">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete4" OnClick="btnMenuDelete4_Click" EnablePostBack="true"
Icon="Delete" ConfirmText="Delete selected row ?" ConfirmTarget="Top" runat="server" Text="Delete" Hidden="true">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID0 = '<%= Menu0.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID0).show(); //showAt(event.pageX, event.pageY);
return false;
}
var menuID1 = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu1(event, rowId) {
F(menuID1).show(); //showAt(event.pageX, event.pageY);
return false;
}
var menuID2 = '<%= Menu2.ClientID %>';
function onRowContextMenu2(event, rowId) {
F(menuID2).show(); //showAt(event.pageX, event.pageY);
return false;
}
var menuID3 = '<%= Menu3.ClientID %>';
function onRowContextMenu3(event, rowId) {
F(menuID3).show(); //showAt(event.pageX, event.pageY);
return false;
}
var menuID4 = '<%= Menu4.ClientID %>';
function onRowContextMenu4(event, rowId) {
F(menuID4).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
function renderSalary(value) {
if (value != "") {
return F.addCommas(value.toFixed(0));
}
else {
return null
}
}
function renderSalaryFloat(value) {
if (value != "") {
return F.addCommas(value.toFixed(2));
}
else {
return null
}
}
</script>
</body>
</html>
@@ -0,0 +1,76 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractorQualificationEdit.aspx.cs" Inherits="FineUIPro.Web.SES.ContractorQualificationEdit" %>
<!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>Signed Contracts</title>
</head>
<body>
<form id="form1" 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>
<Items>
<f:TextBox ID="txtQueName" runat="server" Label="资质名称" MaxLength="200" LabelAlign="Right" LabelWidth="150px" ShowRedStar="true" Required="true"></f:TextBox>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtQueDef" runat="server" Label="资质特别说明" LabelAlign="Right" LabelWidth="150px" Height="100px"></f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="txtLimitStartDate" runat="server" Label="有效期开始时间" LabelAlign="Right" LabelWidth="150px" Required="true"></f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DatePicker ID="txtLimitEndDate" runat="server" Label="有效期到期时间" LabelAlign="Right" LabelWidth="150px" Required="true" ></f:DatePicker>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:TextArea ID="txtRemark" runat="server" Label="备注" LabelAlign="Right" LabelWidth="150px"></f:TextArea>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:Panel ID="Panel3" Width="300px" ShowHeader="false" ShowBorder="false" Layout="Column" CssClass="" runat="server">
<Items>
<f:Label ID="lblAttach" runat="server" Label="Upload Attach" LabelAlign="Right" LabelWidth="150px">
</f:Label>
<f:Button ID="btnAttach" Icon="TableCell" EnablePostBack="true" Text="Upload File" runat="server" OnClick="btnAttach_Click">
</f:Button>
</Items>
</f:Panel>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:HiddenField ID="hdAttachUrl" runat="server">
</f:HiddenField>
<f:HiddenField ID="hdId" runat="server"></f:HiddenField>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="Save" ToolTip="Save" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="Close" Text="Close" runat="server" Icon="SystemClose">
</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>
@@ -0,0 +1,36 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ContractorQueCopy.aspx.cs" Inherits="FineUIPro.Web.SES.ContractorQueCopy" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>RT委托替换</title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" 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>
<Items>
<f:TextBox ID="txtFoNo" runat="server" Label="要拷贝的合同号" LabelAlign="Right" LabelWidth="120px" Width="360px"></f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="提交" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" Text="关闭" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
</form>
</body>
</html>
@@ -0,0 +1,2 @@
<?xml version="1.0" encoding="utf-8"?>
<preserve resultType="9" virtualPath="/App_GlobalResources/" hash="ffffffff9b7f731f" filehash="955b882d221afe2d" flags="140000" assembly="UI" resHash="3f66ba0091020522" />
@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<preserve resultType="8" virtualPath="/global.asax" hash="ffffffff9b7f731f" filehash="3306515ae028" flags="150000" assembly="UI" type="ASP.global_asax">
<filedeps>
<filedep name="/global.asax" />
</filedeps>
</preserve>
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,44 @@
ALTER TABLE dbo.FC_SESRelatedData ADD OtherDef NVARCHAR(300) NULL
GO
ALTER TABLE dbo.Base_FileType ADD IsExport BIT NULL
GO
UPDATE dbo.Base_FileType SET IsExport=0
GO
ALTER VIEW [dbo].[View_FC_ContractManagement]
AS
SELECT cm.OccurDate,fc.FO_NO,dis.Discipline AS DisciplineEn,dis.DisciplineCN,con.Contractor AS ContractorEn,con.ContractorCN,
(CASE WHEN con.Contractor IS NULL THEN con.ContractorCN WHEN con.ContractorCN IS NULL THEN con.Contractor ELSE con.Contractor+con.ContractorCN END)AS Contractor,
(CASE WHEN dis.Discipline IS NULL THEN dis.DisciplineCN WHEN dis.DisciplineCN IS NULL THEN dis.Discipline ELSE dis.Discipline+dis.DisciplineCN END) AS Discipline,
cm.Remark,ftype.FileType,u.UserName AS Contract_Admin, u2.UserName AS Main_Coordinator,mcdep.DepartName AS MCDept,
u3.UserName AS User_Representative, bycDep.DepartCode AS BycDept,ftype.IsExport
FROM dbo.FC_ContractManagement cm
LEFT JOIN dbo.FC_SESRelatedData fc ON fc.ID = cm.FC_ID
LEFT JOIN dbo.Base_Discipline AS dis ON dis.DisciplineId = fc.DisciplineId
LEFT JOIN dbo.Base_Contractor AS con ON con.ContractorId = fc.Contractor
LEFT JOIN dbo.Base_FileType ftype ON ftype.FileTypeId = cm.FileTypeId
LEFT JOIN dbo.Sys_User AS u ON u.UserId = fc.Contract_Admin
LEFT JOIN dbo.Sys_User AS u2 ON u2.UserId = fc.Main_Coordinator
LEFT JOIN dbo.Sys_User AS u3 ON u3.UserId=fc.User_Representative
LEFT JOIN dbo.Base_Depart mcdep ON mcdep.DepartId = u2.DepartId
LEFT JOIN dbo.Base_Depart bycDep ON bycDep.DepartId=cm.BycDept
GO
CREATE VIEW [dbo].[View_EMC_Contractor_Qualification]
AS
SELECT cm.FoId,fc.FO_NO,cm.QueName,cm.QueDef,cm.QueType,cm.LimitStartDate,cm.LimitEndDate,cm.Remark,
(CASE WHEN con.Contractor IS NULL THEN con.ContractorCN WHEN con.ContractorCN IS NULL THEN con.Contractor ELSE con.Contractor+con.ContractorCN END)AS Contractor,
(CASE WHEN dis.Discipline IS NULL THEN dis.DisciplineCN WHEN dis.DisciplineCN IS NULL THEN dis.Discipline ELSE dis.Discipline+dis.DisciplineCN END) AS Discipline,
u.UserName AS Contract_Admin, u2.UserName AS Main_Coordinator,fc.Expire_Date,fc.Contractor AS ContractorId ,fc.FC_Status
FROM dbo.EMC_Contractor_Qualification cm
LEFT JOIN dbo.FC_SESRelatedData fc ON fc.ID = cm.FoId
LEFT JOIN dbo.Base_Discipline AS dis ON dis.DisciplineId = fc.DisciplineId
LEFT JOIN dbo.Base_Contractor AS con ON con.ContractorId = fc.Contractor
LEFT JOIN dbo.Sys_User AS u ON u.UserId = fc.Contract_Admin
LEFT JOIN dbo.Sys_User AS u2 ON u2.UserId = fc.Main_Coordinator
GO