提交代码
|
|
@ -35,3 +35,4 @@
|
||||||
/SGGL/FineUIPro.Web/FileUpload/TestRun/TestRunMonthSummary/2024-03
|
/SGGL/FineUIPro.Web/FileUpload/TestRun/TestRunMonthSummary/2024-03
|
||||||
/SGGL/FineUIPro.Web/FileUpload/TestRun/TestRunMonthSummary/2024-04
|
/SGGL/FineUIPro.Web/FileUpload/TestRun/TestRunMonthSummary/2024-04
|
||||||
/SGGLPackFile
|
/SGGLPackFile
|
||||||
|
/SGGL/FineUIPro.Web/FileUpload/TestRun/TestRunMonthSummary/2024-06
|
||||||
|
|
|
||||||
|
|
@ -4708,6 +4708,14 @@ namespace BLL
|
||||||
/// 员工开车绩效记录模板文件原始虚拟路径
|
/// 员工开车绩效记录模板文件原始虚拟路径
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public const string TestRunPerformanceTemplateUrl = "File\\Excel\\DataOut\\员工开车绩效记录.xlsx";
|
public const string TestRunPerformanceTemplateUrl = "File\\Excel\\DataOut\\员工开车绩效记录.xlsx";
|
||||||
|
/// <summary>
|
||||||
|
/// 开车月技术总结模板文件原始虚拟路径
|
||||||
|
/// </summary>
|
||||||
|
public const string TestRunMonthSummaryTemplateUrl = "File\\Excel\\DataOut\\开车月技术总结.xlsx";
|
||||||
|
/// <summary>
|
||||||
|
/// 开车人员月绩效报告模板文件原始虚拟路径
|
||||||
|
/// </summary>
|
||||||
|
public const string TestRunPerformanceMonthReportTemplateUrl = "File\\Excel\\DataOut\\开车人员月绩效报告.xlsx";
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
||||||
|
|
@ -573,7 +573,6 @@
|
||||||
<Content Include="CQMS\QualityPlanning\ConExperienceSummaryDataIn.aspx" />
|
<Content Include="CQMS\QualityPlanning\ConExperienceSummaryDataIn.aspx" />
|
||||||
<Content Include="CQMS\QualityPlanning\ConExperienceSummaryEdit.aspx" />
|
<Content Include="CQMS\QualityPlanning\ConExperienceSummaryEdit.aspx" />
|
||||||
<Content Include="CQMS\QualityPlanning\Organizational.aspx" />
|
<Content Include="CQMS\QualityPlanning\Organizational.aspx" />
|
||||||
<Content Include="CQMS\QualityPlanning\Organizational123.aspx" />
|
|
||||||
<Content Include="CQMS\QualityPlanning\ProjectQualityPlan.aspx" />
|
<Content Include="CQMS\QualityPlanning\ProjectQualityPlan.aspx" />
|
||||||
<Content Include="CQMS\QualityPlanning\ProjectQualityPlanDataIn.aspx" />
|
<Content Include="CQMS\QualityPlanning\ProjectQualityPlanDataIn.aspx" />
|
||||||
<Content Include="CQMS\QualityPlanning\ProjectQualityPlanEdit.aspx" />
|
<Content Include="CQMS\QualityPlanning\ProjectQualityPlanEdit.aspx" />
|
||||||
|
|
@ -1730,8 +1729,33 @@
|
||||||
<Content Include="res\assets\js\swiper.min.js" />
|
<Content Include="res\assets\js\swiper.min.js" />
|
||||||
<Content Include="res\assets\js\video-7.15.0.min.js" />
|
<Content Include="res\assets\js\video-7.15.0.min.js" />
|
||||||
<Content Include="res\assets\js\world.js" />
|
<Content Include="res\assets\js\world.js" />
|
||||||
|
<Content Include="res\css\company.css" />
|
||||||
|
<Content Include="res\css\swiper.min.css" />
|
||||||
|
<Content Include="res\images\01.png" />
|
||||||
|
<Content Include="res\images\02.png" />
|
||||||
|
<Content Include="res\images\03.png" />
|
||||||
|
<Content Include="res\images\04.png" />
|
||||||
|
<Content Include="res\images\05.png" />
|
||||||
|
<Content Include="res\images\06.png" />
|
||||||
|
<Content Include="res\images\06zbj.png" />
|
||||||
|
<Content Include="res\images\07.png" />
|
||||||
|
<Content Include="res\images\08.png" />
|
||||||
|
<Content Include="res\images\09.png" />
|
||||||
|
<Content Include="res\images\10.png" />
|
||||||
|
<Content Include="res\images\11.png" />
|
||||||
|
<Content Include="res\images\12.png" />
|
||||||
|
<Content Include="res\images\13.png" />
|
||||||
|
<Content Include="res\images\14.png" />
|
||||||
|
<Content Include="res\images\15.png" />
|
||||||
|
<Content Include="res\images\16.png" />
|
||||||
|
<Content Include="res\images\17.png" />
|
||||||
|
<Content Include="res\images\18.png" />
|
||||||
|
<Content Include="res\images\19.png" />
|
||||||
|
<Content Include="res\images\20.png" />
|
||||||
|
<Content Include="res\images\bj.jpg" />
|
||||||
<Content Include="res\images\Organizational.png" />
|
<Content Include="res\images\Organizational.png" />
|
||||||
<Content Include="res\images\SubOrganizational.png" />
|
<Content Include="res\images\SubOrganizational.png" />
|
||||||
|
<Content Include="res\images\zg05.png" />
|
||||||
<Content Include="res\index\images\logocenter.png" />
|
<Content Include="res\index\images\logocenter.png" />
|
||||||
<Content Include="res\js\swiper-bundle.min.css" />
|
<Content Include="res\js\swiper-bundle.min.css" />
|
||||||
<Content Include="res\js\swiper-bundle.min.js" />
|
<Content Include="res\js\swiper-bundle.min.js" />
|
||||||
|
|
@ -1739,6 +1763,11 @@
|
||||||
<Content Include="res\js\swiper.js" />
|
<Content Include="res\js\swiper.js" />
|
||||||
<Content Include="res\js\swiper.min.css" />
|
<Content Include="res\js\swiper.min.css" />
|
||||||
<Content Include="res\js\swiper.min.js" />
|
<Content Include="res\js\swiper.min.js" />
|
||||||
|
<Content Include="res\lib\china.js" />
|
||||||
|
<Content Include="res\lib\echarts.min.js" />
|
||||||
|
<Content Include="res\lib\flex.js" />
|
||||||
|
<Content Include="res\lib\jquery.js" />
|
||||||
|
<Content Include="res\lib\swiper.min.js" />
|
||||||
<Content Include="res\liveplayer\liveplayer-element.min.js" />
|
<Content Include="res\liveplayer\liveplayer-element.min.js" />
|
||||||
<Content Include="res\liveplayer\liveplayer.swf" />
|
<Content Include="res\liveplayer\liveplayer.swf" />
|
||||||
<Content Include="SHIYE\InformationProject\SafetyBriefing.aspx" />
|
<Content Include="SHIYE\InformationProject\SafetyBriefing.aspx" />
|
||||||
|
|
@ -3007,6 +3036,9 @@
|
||||||
<Content Include="res\assets\iconfont\iconfont.ttf" />
|
<Content Include="res\assets\iconfont\iconfont.ttf" />
|
||||||
<Content Include="res\assets\iconfont\iconfont.woff" />
|
<Content Include="res\assets\iconfont\iconfont.woff" />
|
||||||
<Content Include="res\assets\iconfont\iconfont.woff2" />
|
<Content Include="res\assets\iconfont\iconfont.woff2" />
|
||||||
|
<Content Include="res\font\iconfont.ttf" />
|
||||||
|
<Content Include="res\font\iconfont.woff" />
|
||||||
|
<Content Include="res\font\iconfont.woff2" />
|
||||||
<None Include="res\icon\Thumbs.db" />
|
<None Include="res\icon\Thumbs.db" />
|
||||||
<None Include="res\images\16\Thumbs.db" />
|
<None Include="res\images\16\Thumbs.db" />
|
||||||
<None Include="res\images\fa_png\Thumbs.db" />
|
<None Include="res\images\fa_png\Thumbs.db" />
|
||||||
|
|
@ -8408,13 +8440,6 @@
|
||||||
<Compile Include="CQMS\QualityPlanning\Organizational.aspx.designer.cs">
|
<Compile Include="CQMS\QualityPlanning\Organizational.aspx.designer.cs">
|
||||||
<DependentUpon>Organizational.aspx</DependentUpon>
|
<DependentUpon>Organizational.aspx</DependentUpon>
|
||||||
</Compile>
|
</Compile>
|
||||||
<Compile Include="CQMS\QualityPlanning\Organizational123.aspx.cs">
|
|
||||||
<DependentUpon>Organizational123.aspx</DependentUpon>
|
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
|
||||||
</Compile>
|
|
||||||
<Compile Include="CQMS\QualityPlanning\Organizational123.aspx.designer.cs">
|
|
||||||
<DependentUpon>Organizational123.aspx</DependentUpon>
|
|
||||||
</Compile>
|
|
||||||
<Compile Include="CQMS\QualityPlanning\ProjectQualityPlan.aspx.cs">
|
<Compile Include="CQMS\QualityPlanning\ProjectQualityPlan.aspx.cs">
|
||||||
<DependentUpon>ProjectQualityPlan.aspx</DependentUpon>
|
<DependentUpon>ProjectQualityPlan.aspx</DependentUpon>
|
||||||
<SubType>ASPXCodeBehind</SubType>
|
<SubType>ASPXCodeBehind</SubType>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||||
<UseIISExpress>true</UseIISExpress>
|
<UseIISExpress>true</UseIISExpress>
|
||||||
<Use64BitIISExpress>false</Use64BitIISExpress>
|
<Use64BitIISExpress>false</Use64BitIISExpress>
|
||||||
<IISExpressSSLPort />
|
<IISExpressSSLPort />
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@
|
||||||
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
||||||
Hidden="true">
|
Hidden="true">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="" ToolTip="导出" Icon="FolderUp"
|
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="" ToolTip="导出" Icon="FolderUp" Hidden="true"
|
||||||
EnableAjax="false" DisableControlBeforePostBack="false">
|
EnableAjax="false" DisableControlBeforePostBack="false">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</Items>
|
</Items>
|
||||||
|
|
|
||||||
|
|
@ -285,6 +285,7 @@ namespace FineUIPro.Web.Personal
|
||||||
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyle.WrapText = true;
|
||||||
var font = workbook.CreateFont();
|
var font = workbook.CreateFont();
|
||||||
font.FontHeightInPoints = 10;
|
font.FontHeightInPoints = 10;
|
||||||
//font.FontHeightInPoints = (short)8.5;字号为小数时要转为short
|
//font.FontHeightInPoints = (short)8.5;字号为小数时要转为short
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@
|
||||||
<Items>
|
<Items>
|
||||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="开车月技术总结" EnableCollapse="true"
|
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="开车月技术总结" EnableCollapse="true"
|
||||||
runat="server" BoxFlex="1" DataKeyNames="TestRunMonthSummaryId" EnableColumnLines="true" DataIDField="TestRunMonthSummaryId"
|
runat="server" BoxFlex="1" DataKeyNames="TestRunMonthSummaryId" EnableColumnLines="true" DataIDField="TestRunMonthSummaryId"
|
||||||
AllowSorting="true" SortField="RaiseDate" SortDirection="DESC" OnSort="Grid1_Sort" ForceFit="true"
|
AllowSorting="true" SortField="RaiseDate" SortDirection="DESC" OnSort="Grid1_Sort" ForceFit="true" EnableCheckBoxSelect="true"
|
||||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
||||||
<Toolbars>
|
<Toolbars>
|
||||||
|
|
@ -58,6 +58,9 @@
|
||||||
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
||||||
Hidden="true">
|
Hidden="true">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
|
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="" ToolTip="导出" Icon="FolderUp" Hidden="true"
|
||||||
|
EnableAjax="false" DisableControlBeforePostBack="false">
|
||||||
|
</f:Button>
|
||||||
</Items>
|
</Items>
|
||||||
</f:Toolbar>
|
</f:Toolbar>
|
||||||
</Toolbars>
|
</Toolbars>
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,13 @@
|
||||||
using BLL;
|
using BLL;
|
||||||
|
using NPOI.HSSF.UserModel;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
using System.Data.SqlClient;
|
using System.Data.SqlClient;
|
||||||
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Net;
|
||||||
|
using System.Web;
|
||||||
|
|
||||||
namespace FineUIPro.Web.Personal
|
namespace FineUIPro.Web.Personal
|
||||||
{
|
{
|
||||||
|
|
@ -240,5 +244,170 @@ namespace FineUIPro.Web.Personal
|
||||||
}
|
}
|
||||||
return url;
|
return url;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region 导出按钮
|
||||||
|
/// 导出按钮
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="sender"></param>
|
||||||
|
/// <param name="e"></param>
|
||||||
|
protected void btnOut_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
string ids = string.Empty;
|
||||||
|
if (Grid1.SelectedRowIndexArray.Length > 0)
|
||||||
|
{
|
||||||
|
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
|
||||||
|
{
|
||||||
|
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
|
||||||
|
ids += rowID + ",";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
ShowNotify("请至少选中一行!", MessageBoxIcon.Warning);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
string rootPath = Server.MapPath("~/");
|
||||||
|
string initTemplatePath = string.Empty;
|
||||||
|
string uploadfilepath = string.Empty;
|
||||||
|
string newUrl = string.Empty;
|
||||||
|
string filePath = string.Empty;
|
||||||
|
initTemplatePath = Const.TestRunMonthSummaryTemplateUrl;
|
||||||
|
uploadfilepath = rootPath + initTemplatePath;
|
||||||
|
newUrl = uploadfilepath.Replace(".xlsx", "(" + string.Format("{0:yyyy-MM-dd}", DateTime.Now) + ").xlsx");
|
||||||
|
File.Copy(uploadfilepath, newUrl);
|
||||||
|
// 第一步:读取文件流
|
||||||
|
NPOI.SS.UserModel.IWorkbook workbook;
|
||||||
|
using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read))
|
||||||
|
{
|
||||||
|
workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream);
|
||||||
|
}
|
||||||
|
Model.SGGLDB db = Funs.DB;
|
||||||
|
string[] strs = ids.Split(',');
|
||||||
|
var projects = from x in db.Base_Project select x;
|
||||||
|
var lists = from x in db.Person_TestRunMonthSummary where strs.Contains(x.TestRunMonthSummaryId) orderby x.RaiseDate descending select x;
|
||||||
|
// 创建单元格样式
|
||||||
|
NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle();
|
||||||
|
cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
|
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyle.WrapText = true;
|
||||||
|
var font = workbook.CreateFont();
|
||||||
|
font.FontHeightInPoints = 10;
|
||||||
|
//font.FontHeightInPoints = (short)8.5;字号为小数时要转为short
|
||||||
|
cellStyle.SetFont(font);
|
||||||
|
// 第二步:创建新数据行
|
||||||
|
NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
|
||||||
|
int i = 1;
|
||||||
|
foreach (var item in lists)
|
||||||
|
{
|
||||||
|
// 第二步:创建新数据行
|
||||||
|
NPOI.SS.UserModel.IRow row = sheet.GetRow(i);
|
||||||
|
NPOI.SS.UserModel.ICell cell;
|
||||||
|
// 添加数据
|
||||||
|
cell = row.CreateCell(0);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(i.ToString());
|
||||||
|
cell = row.CreateCell(1);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(BLL.UserService.GetUserNameByUserId(item.UserId));
|
||||||
|
cell = row.CreateCell(2);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
string months = string.Empty;
|
||||||
|
if (item.RaiseDate != null)
|
||||||
|
{
|
||||||
|
months = string.Format("{0:yyyy-MM-dd}", item.RaiseDate);
|
||||||
|
}
|
||||||
|
cell.SetCellValue(months);
|
||||||
|
cell = row.CreateCell(3);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
var project = projects.FirstOrDefault(x => x.ProjectId == item.ProjectId);
|
||||||
|
if (project != null)
|
||||||
|
{
|
||||||
|
cell.SetCellValue(project.ProjectName);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
cell.SetCellValue("本部");
|
||||||
|
}
|
||||||
|
cell = row.CreateCell(4);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(item.Major);
|
||||||
|
cell = row.CreateCell(5);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(item.ProcessName);
|
||||||
|
cell = row.CreateCell(6);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(item.ProblemDescription);
|
||||||
|
cell = row.CreateCell(7);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(item.HandleMethod);
|
||||||
|
cell = row.CreateCell(8);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(item.ExperienceOrSuggestion);
|
||||||
|
i++;
|
||||||
|
}
|
||||||
|
// 第三步:写入文件流
|
||||||
|
using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write))
|
||||||
|
{
|
||||||
|
workbook.Write(stream);
|
||||||
|
workbook.Close();
|
||||||
|
}
|
||||||
|
string fileName = Path.GetFileName(newUrl);
|
||||||
|
FileInfo info = new FileInfo(newUrl);
|
||||||
|
long fileSize = info.Length;
|
||||||
|
Response.Clear();
|
||||||
|
Response.ContentType = "application/x-zip-compressed";
|
||||||
|
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
|
||||||
|
Response.AddHeader("Content-Length", fileSize.ToString());
|
||||||
|
Response.TransmitFile(newUrl, 0, fileSize);
|
||||||
|
Response.Flush();
|
||||||
|
Response.Close();
|
||||||
|
File.Delete(newUrl);
|
||||||
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private void AddCellPicture(NPOI.SS.UserModel.ISheet sheet, HSSFWorkbook workbook, HSSFPatriarch patriarch, string fileUrl, int firstRow, int lastRow, int firstCol, int lastCol)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
//校验地址
|
||||||
|
if (fileUrl == null || fileUrl == "" || fileUrl.IndexOf("/") == -1 || fileUrl.IndexOf(".") == -1)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
string[] arr = fileUrl.Split(new Char[] { '/' });
|
||||||
|
string fileName = arr[arr.Length - 1];
|
||||||
|
string fileLocation = HttpContext.Current.Server.MapPath("~/download");
|
||||||
|
string fullPath = Path.Combine(fileLocation, Path.GetFileName(fileName));
|
||||||
|
|
||||||
|
//本地没有,下载文件保存到本地
|
||||||
|
if (!File.Exists(fullPath))
|
||||||
|
{
|
||||||
|
WebClient webClient = new WebClient();
|
||||||
|
webClient.DownloadFile(fileUrl, fullPath);
|
||||||
|
}
|
||||||
|
|
||||||
|
//从本地取
|
||||||
|
if (!string.IsNullOrEmpty(fullPath))
|
||||||
|
{
|
||||||
|
byte[] bytes = System.IO.File.ReadAllBytes(fullPath);
|
||||||
|
int pictureIdx = workbook.AddPicture(bytes, NPOI.SS.UserModel.PictureType.JPEG);
|
||||||
|
|
||||||
|
//HSSFPatriarch patriarch = (HSSFPatriarch)sheet.CreateDrawingPatriarch();
|
||||||
|
HSSFClientAnchor anchor = new HSSFClientAnchor(0, 0, 0, 0, firstCol, firstRow, lastCol, lastRow);
|
||||||
|
HSSFPicture pict = (HSSFPicture)patriarch.CreatePicture(anchor, pictureIdx);
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
throw e;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -84,6 +84,15 @@ namespace FineUIPro.Web.Personal {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button btnNew;
|
protected global::FineUIPro.Button btnNew;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnOut 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.Button btnOut;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// lbImageUrl1 控件。
|
/// lbImageUrl1 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -27,7 +27,7 @@
|
||||||
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
<f:Button ID="btnNew" ToolTip="新增" Icon="Add" EnablePostBack="true" OnClick="btnNew_Click" runat="server"
|
||||||
Hidden="true">
|
Hidden="true">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="" ToolTip="导出" Icon="FolderUp"
|
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="" ToolTip="导出" Icon="FolderUp" Hidden="true"
|
||||||
EnableAjax="false" DisableControlBeforePostBack="false">
|
EnableAjax="false" DisableControlBeforePostBack="false">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</Items>
|
</Items>
|
||||||
|
|
|
||||||
|
|
@ -252,6 +252,7 @@ namespace FineUIPro.Web.Personal
|
||||||
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyle.WrapText = true;
|
||||||
var font = workbook.CreateFont();
|
var font = workbook.CreateFont();
|
||||||
font.FontHeightInPoints = 10;
|
font.FontHeightInPoints = 10;
|
||||||
//font.FontHeightInPoints = (short)8.5;字号为小数时要转为short
|
//font.FontHeightInPoints = (short)8.5;字号为小数时要转为short
|
||||||
|
|
@ -259,7 +260,6 @@ namespace FineUIPro.Web.Personal
|
||||||
// 第二步:创建新数据行
|
// 第二步:创建新数据行
|
||||||
NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
|
NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
|
||||||
int i = 1;
|
int i = 1;
|
||||||
int sum = 0;
|
|
||||||
foreach (var item in lists)
|
foreach (var item in lists)
|
||||||
{
|
{
|
||||||
// 第二步:创建新数据行
|
// 第二步:创建新数据行
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
<Items>
|
<Items>
|
||||||
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="开车绩效记录" EnableCollapse="true"
|
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" Title="开车绩效记录" EnableCollapse="true"
|
||||||
runat="server" BoxFlex="1" DataKeyNames="TestRunPerformanceMonthReportId" EnableColumnLines="true" DataIDField="TestRunPerformanceMonthReportId"
|
runat="server" BoxFlex="1" DataKeyNames="TestRunPerformanceMonthReportId" EnableColumnLines="true" DataIDField="TestRunPerformanceMonthReportId"
|
||||||
AllowSorting="true" SortField="Year" SortDirection="DESC" OnSort="Grid1_Sort" ForceFit="true"
|
AllowSorting="true" SortField="Year" SortDirection="DESC" OnSort="Grid1_Sort" ForceFit="true" OnRowCommand="Grid1_RowCommand"
|
||||||
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
|
||||||
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick" EnableTextSelection="True">
|
||||||
<Toolbars>
|
<Toolbars>
|
||||||
|
|
@ -41,6 +41,7 @@
|
||||||
<f:RenderField Width="100px" ColumnID="CompileDate" DataField="CompileDate"
|
<f:RenderField Width="100px" ColumnID="CompileDate" DataField="CompileDate"
|
||||||
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="编制日期" TextAlign="Center" HeaderTextAlign="Center">
|
FieldType="Date" Renderer="Date" RendererArgument="yyyy-MM-dd" HeaderText="编制日期" TextAlign="Center" HeaderTextAlign="Center">
|
||||||
</f:RenderField>
|
</f:RenderField>
|
||||||
|
<f:LinkButtonField ID="lk" ColumnID="export" Hidden="true" HeaderText="导出" Width="60px" Icon="ArrowUp" TextAlign="Center" HeaderTextAlign="Center" CommandName="export" EnableAjax="false" />
|
||||||
</Columns>
|
</Columns>
|
||||||
<Listeners>
|
<Listeners>
|
||||||
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
|
||||||
|
|
|
||||||
|
|
@ -1,9 +1,12 @@
|
||||||
using BLL;
|
using BLL;
|
||||||
|
using NPOI.SS.Util;
|
||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Data;
|
using System.Data;
|
||||||
using System.Data.SqlClient;
|
using System.Data.SqlClient;
|
||||||
|
using System.IO;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Web.UI;
|
||||||
|
|
||||||
namespace FineUIPro.Web.ZHGL.TestRunPerformance
|
namespace FineUIPro.Web.ZHGL.TestRunPerformance
|
||||||
{
|
{
|
||||||
|
|
@ -199,5 +202,794 @@ namespace FineUIPro.Web.ZHGL.TestRunPerformance
|
||||||
{
|
{
|
||||||
BindGrid();
|
BindGrid();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
|
||||||
|
{
|
||||||
|
if (e.CommandName == "export")
|
||||||
|
{
|
||||||
|
this.EnableViewState = false;
|
||||||
|
string testRunPerformanceMonthReportId = this.Grid1.Rows[e.RowIndex].RowID;
|
||||||
|
string rootPath = Server.MapPath("~/");
|
||||||
|
string initTemplatePath = string.Empty;
|
||||||
|
string uploadfilepath = string.Empty;
|
||||||
|
string newUrl = string.Empty;
|
||||||
|
string filePath = string.Empty;
|
||||||
|
initTemplatePath = Const.TestRunPerformanceMonthReportTemplateUrl;
|
||||||
|
uploadfilepath = rootPath + initTemplatePath;
|
||||||
|
Model.ZHGL_TestRunPerformanceMonthReport report = BLL.TestRunPerformanceMonthReportService.GetTestRunPerformanceMonthReportById(testRunPerformanceMonthReportId);
|
||||||
|
if (report != null)
|
||||||
|
{
|
||||||
|
string userName = BLL.UserService.GetUserNameByUserId(report.UserId);
|
||||||
|
newUrl = uploadfilepath.Replace(".xlsx", "(" + userName + "-" + report.Year.ToString() + ").xlsx");
|
||||||
|
File.Copy(uploadfilepath, newUrl);
|
||||||
|
// 第一步:读取文件流
|
||||||
|
NPOI.SS.UserModel.IWorkbook workbook;
|
||||||
|
using (FileStream stream = new FileStream(newUrl, FileMode.Open, FileAccess.Read))
|
||||||
|
{
|
||||||
|
workbook = new NPOI.XSSF.UserModel.XSSFWorkbook(stream);
|
||||||
|
}
|
||||||
|
Model.SGGLDB db = Funs.DB;
|
||||||
|
var projects = from x in db.Base_Project select x;
|
||||||
|
|
||||||
|
|
||||||
|
int year = report.Year.Value;
|
||||||
|
string userId = report.UserId;
|
||||||
|
DateTime startDate = Convert.ToDateTime(year.ToString() + "-01" + "-01");
|
||||||
|
DateTime endDate = startDate.AddYears(1);
|
||||||
|
var getTestRunPerformances = (from x in db.Person_TestRunPerformance
|
||||||
|
join y in db.Base_TestRunPerformanceStandard on x.TestRunPerformanceStandardId equals y.TestRunPerformanceStandardId
|
||||||
|
where x.UserId == userId && x.Months >= startDate && x.Months < endDate
|
||||||
|
orderby x.ProjectId
|
||||||
|
select new { x.Months, x.ProjectId, x.JobContent, y.Type, y.Item, y.Unit, x.Days, y.Code1 }).ToList();
|
||||||
|
IQueryable<Model.Person_BusinessTrip> getTrips = from x in db.Person_BusinessTrip
|
||||||
|
where x.UserId == userId && x.LeaveDate >= startDate && x.ArriveDate < endDate
|
||||||
|
select x;
|
||||||
|
if (getTestRunPerformances.Count() > 0)
|
||||||
|
{
|
||||||
|
// 创建单元格样式
|
||||||
|
NPOI.SS.UserModel.ICellStyle cellStyleT = workbook.CreateCellStyle();
|
||||||
|
cellStyleT.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleT.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleT.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleT.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleT.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
|
cellStyleT.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyleT.WrapText = true;
|
||||||
|
var fontT = workbook.CreateFont();
|
||||||
|
fontT.FontHeightInPoints = 16;
|
||||||
|
cellStyleT.SetFont(fontT);
|
||||||
|
NPOI.SS.UserModel.ICellStyle cellStyleTP = workbook.CreateCellStyle();
|
||||||
|
cellStyleTP.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleTP.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleTP.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleTP.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyleTP.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
|
cellStyleTP.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyleTP.WrapText = true;
|
||||||
|
var fontTP = workbook.CreateFont();
|
||||||
|
fontTP.FontHeightInPoints = 10;
|
||||||
|
fontTP.IsBold = true;
|
||||||
|
cellStyleTP.SetFont(fontTP);
|
||||||
|
NPOI.SS.UserModel.ICellStyle cellStyle = workbook.CreateCellStyle();
|
||||||
|
cellStyle.BorderTop = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderRight = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderBottom = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.BorderLeft = NPOI.SS.UserModel.BorderStyle.Thin;
|
||||||
|
cellStyle.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;
|
||||||
|
cellStyle.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center;
|
||||||
|
cellStyle.WrapText = true;
|
||||||
|
var font = workbook.CreateFont();
|
||||||
|
font.FontHeightInPoints = 10;
|
||||||
|
cellStyle.SetFont(font);
|
||||||
|
// 第二步:创建新数据行
|
||||||
|
NPOI.SS.UserModel.ISheet sheet = workbook.GetSheetAt(0);
|
||||||
|
int i = 0;
|
||||||
|
// 第二步:创建新数据行
|
||||||
|
NPOI.SS.UserModel.IRow row = sheet.GetRow(i);
|
||||||
|
NPOI.SS.UserModel.ICell cell;
|
||||||
|
// 添加数据
|
||||||
|
cell = row.CreateCell(0);
|
||||||
|
cell.CellStyle = cellStyleT;
|
||||||
|
cell.SetCellValue(userName + " " + year.ToString() + "年度开车绩效数据报告");
|
||||||
|
i = 3;
|
||||||
|
row = sheet.CreateRow(i);
|
||||||
|
// 添加数据
|
||||||
|
cell = row.CreateCell(0);
|
||||||
|
cell.CellStyle = cellStyleTP;
|
||||||
|
cell.SetCellValue("年度累计数据");
|
||||||
|
cell = row.CreateCell(1);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(2);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 0, 2));
|
||||||
|
cell = row.CreateCell(3);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(4);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "部门基础工作").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(5);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(6);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 4, 6));
|
||||||
|
cell = row.CreateCell(7);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "公司培训").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(8);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 7, 8));
|
||||||
|
cell = row.CreateCell(9);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "项目投标").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(10);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 9, 10));
|
||||||
|
cell = row.CreateCell(11);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "开车策划").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(12);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 11, 12));
|
||||||
|
cell = row.CreateCell(13);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "开车培训").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(14);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(15);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 13, 15));
|
||||||
|
cell = row.CreateCell(16);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "合同管理").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(17);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 16, 17));
|
||||||
|
cell = row.CreateCell(18);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "预试车").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(19);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(20);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 18, 20));
|
||||||
|
cell = row.CreateCell(21);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "试车").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(22);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 21, 22));
|
||||||
|
cell = row.CreateCell(23);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "试运行及考核").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(24);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(25);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 23, 25));
|
||||||
|
cell = row.CreateCell(26);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "开车收尾").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(27);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(28);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 26, 28));
|
||||||
|
cell = row.CreateCell(29);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "项目协调").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(30);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 29, 30));
|
||||||
|
cell = row.CreateCell(31);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Type == "其他").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(32);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(33);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 31, 33));
|
||||||
|
double sumDaysA = 0, sumDays1A = 0, SumDays3A = 0;
|
||||||
|
foreach (var item in getTestRunPerformances)
|
||||||
|
{
|
||||||
|
bool isForeign = false;
|
||||||
|
var project = projects.FirstOrDefault(x => x.ProjectId == item.ProjectId);
|
||||||
|
if (project != null)
|
||||||
|
{
|
||||||
|
if (project.IsForeign == true)
|
||||||
|
{
|
||||||
|
isForeign = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (isForeign) //境外项目
|
||||||
|
{
|
||||||
|
if (item.Code1 != 1 && item.Code1 != 2 && item.Code1 != 12)
|
||||||
|
{
|
||||||
|
sumDaysA += item.Days * 1.2 ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3A += item.Days * 1.2 ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sumDaysA += item.Days ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3A += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sumDaysA += item.Days ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3A += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (item.Code1 == 1)
|
||||||
|
{
|
||||||
|
sumDays1A += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int projectTripDaysA = 0;
|
||||||
|
var monthProjectTripsA = getTrips.Where(x => x.Type == "1");
|
||||||
|
foreach (var item in monthProjectTripsA)
|
||||||
|
{
|
||||||
|
if (item.ArriveDate < startDate)
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= endDate)
|
||||||
|
{
|
||||||
|
projectTripDaysA += (endDate - startDate).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
projectTripDaysA += (item.LeaveDate.Value - startDate).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= endDate)
|
||||||
|
{
|
||||||
|
projectTripDaysA += (endDate - item.ArriveDate.Value).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
projectTripDaysA += (item.LeaveDate.Value - item.ArriveDate.Value).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int otherTripDaysA = 0;
|
||||||
|
var monthOtherTripsA = getTrips.Where(x => x.Type == "2");
|
||||||
|
foreach (var item in monthOtherTripsA)
|
||||||
|
{
|
||||||
|
if (item.ArriveDate < startDate)
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= endDate)
|
||||||
|
{
|
||||||
|
otherTripDaysA += (endDate - startDate).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
otherTripDaysA += (item.LeaveDate.Value - startDate).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= endDate)
|
||||||
|
{
|
||||||
|
otherTripDaysA += (endDate - item.ArriveDate.Value).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
otherTripDaysA += (item.LeaveDate.Value - item.ArriveDate.Value).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
cell = row.CreateCell(34);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(sumDaysA.ToString());
|
||||||
|
cell = row.CreateCell(35);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(projectTripDaysA.ToString());
|
||||||
|
cell = row.CreateCell(36);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(otherTripDaysA.ToString());
|
||||||
|
cell = row.CreateCell(37);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(sumDays1A.ToString());
|
||||||
|
cell = row.CreateCell(38);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(SumDays3A.ToString());
|
||||||
|
DateTime startMonth;
|
||||||
|
List<DateTime> months = new List<DateTime>();
|
||||||
|
startMonth = startDate;
|
||||||
|
do
|
||||||
|
{
|
||||||
|
months.Add(startMonth);
|
||||||
|
startMonth = startMonth.AddMonths(1);
|
||||||
|
} while (startMonth < endDate);
|
||||||
|
i++;
|
||||||
|
int a = 1;
|
||||||
|
for (int j = 0; j < months.Count; j++)
|
||||||
|
{
|
||||||
|
row = sheet.CreateRow(i);
|
||||||
|
cell = row.CreateCell(0);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(GetNum(j + 1));
|
||||||
|
cell = row.CreateCell(1);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(months[j].Year + "年" + months[j].Month + "月开车绩效");
|
||||||
|
cell = row.CreateCell(2);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 1, 2));
|
||||||
|
cell = row.CreateCell(3);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(4);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "部门基础工作").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(5);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(6);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 4, 6));
|
||||||
|
cell = row.CreateCell(7);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "公司培训").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(8);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 7, 8));
|
||||||
|
cell = row.CreateCell(9);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "项目投标").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(10);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 9, 10));
|
||||||
|
cell = row.CreateCell(11);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "开车策划").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(12);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 11, 12));
|
||||||
|
cell = row.CreateCell(13);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "开车培训").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(14);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(15);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 13, 15));
|
||||||
|
cell = row.CreateCell(16);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "合同管理").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(17);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 16, 17));
|
||||||
|
cell = row.CreateCell(18);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "预试车").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(19);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(20);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 18, 20));
|
||||||
|
cell = row.CreateCell(21);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "试车").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(22);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 21, 22));
|
||||||
|
cell = row.CreateCell(23);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "试运行及考核").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(24);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(25);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 23, 25));
|
||||||
|
cell = row.CreateCell(26);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "开车收尾").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(27);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(28);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 26, 28));
|
||||||
|
cell = row.CreateCell(29);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "项目协调").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(30);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 29, 30));
|
||||||
|
cell = row.CreateCell(31);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue((getTestRunPerformances.Where(x => x.Months == months[j] && x.Type == "其他").Sum(x => x.Days ?? 0)).ToString());
|
||||||
|
cell = row.CreateCell(32);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(33);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 31, 33));
|
||||||
|
var monthList = getTestRunPerformances.Where(x => x.Months == months[j]);
|
||||||
|
double sumDays = 0, sumDays1 = 0, SumDays3 = 0;
|
||||||
|
foreach (var item in monthList)
|
||||||
|
{
|
||||||
|
bool isForeign = false;
|
||||||
|
var project = projects.FirstOrDefault(x => x.ProjectId == item.ProjectId);
|
||||||
|
if (project != null)
|
||||||
|
{
|
||||||
|
if (project.IsForeign == true)
|
||||||
|
{
|
||||||
|
isForeign = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (isForeign) //境外项目
|
||||||
|
{
|
||||||
|
if (item.Code1 != 1 && item.Code1 != 2 && item.Code1 != 12)
|
||||||
|
{
|
||||||
|
sumDays += item.Days * 1.2 ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3 += item.Days * 1.2 ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sumDays += item.Days ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3 += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
sumDays += item.Days ?? 0;
|
||||||
|
if (item.Code1 == 3)
|
||||||
|
{
|
||||||
|
SumDays3 += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (item.Code1 == 1)
|
||||||
|
{
|
||||||
|
sumDays1 += item.Days ?? 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int projectTripDays = 0;
|
||||||
|
var monthProjectTrips = getTrips.Where(x => x.LeaveDate >= months[j] && x.ArriveDate < months[j].AddMonths(1) && x.Type == "1");
|
||||||
|
foreach (var item in monthProjectTrips)
|
||||||
|
{
|
||||||
|
if (item.ArriveDate < months[j])
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= months[j].AddMonths(1))
|
||||||
|
{
|
||||||
|
projectTripDays += (months[j].AddMonths(1) - months[j]).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
projectTripDays += (item.LeaveDate.Value - months[j]).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= months[j].AddMonths(1))
|
||||||
|
{
|
||||||
|
projectTripDays += (months[j].AddMonths(1) - item.ArriveDate.Value).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
projectTripDays += (item.LeaveDate.Value - item.ArriveDate.Value).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
int otherTripDays = 0;
|
||||||
|
var monthOtherTrips = getTrips.Where(x => x.LeaveDate >= months[j] && x.ArriveDate < months[j].AddMonths(1) && x.Type == "2");
|
||||||
|
foreach (var item in monthOtherTrips)
|
||||||
|
{
|
||||||
|
if (item.ArriveDate < months[j])
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= months[j].AddMonths(1))
|
||||||
|
{
|
||||||
|
otherTripDays += (months[j].AddMonths(1) - months[j]).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
otherTripDays += (item.LeaveDate.Value - months[j]).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (item.LeaveDate == null || item.LeaveDate >= months[j].AddMonths(1))
|
||||||
|
{
|
||||||
|
otherTripDays += (months[j].AddMonths(1) - item.ArriveDate.Value).Days;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
otherTripDays += (item.LeaveDate.Value - item.ArriveDate.Value).Days + 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
cell = row.CreateCell(34);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(sumDays.ToString());
|
||||||
|
cell = row.CreateCell(35);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(projectTripDays.ToString());
|
||||||
|
cell = row.CreateCell(36);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(otherTripDays.ToString());
|
||||||
|
cell = row.CreateCell(37);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(sumDays1.ToString());
|
||||||
|
cell = row.CreateCell(38);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(SumDays3.ToString());
|
||||||
|
i++;
|
||||||
|
row = sheet.CreateRow(i);
|
||||||
|
cell = row.CreateCell(0);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue("序号");
|
||||||
|
cell = row.CreateCell(1);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue("工作地点 (本部/项目现场/其他)");
|
||||||
|
cell = row.CreateCell(2);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue("工作内容");
|
||||||
|
cell = row.CreateCell(3);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(4);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(5);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(6);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 4, 6));
|
||||||
|
cell = row.CreateCell(7);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(8);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 7, 8));
|
||||||
|
cell = row.CreateCell(9);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(10);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 9, 10));
|
||||||
|
cell = row.CreateCell(11);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(12);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 11, 12));
|
||||||
|
cell = row.CreateCell(13);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(14);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(15);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 13, 15));
|
||||||
|
cell = row.CreateCell(16);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(17);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 16, 17));
|
||||||
|
cell = row.CreateCell(18);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(19);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(20);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 18, 20));
|
||||||
|
cell = row.CreateCell(21);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(22);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 21, 22));
|
||||||
|
cell = row.CreateCell(23);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(24);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(25);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 23, 25));
|
||||||
|
cell = row.CreateCell(26);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(27);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(28);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 26, 28));
|
||||||
|
cell = row.CreateCell(29);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(30);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 29, 30));
|
||||||
|
cell = row.CreateCell(31);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(32);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
cell = row.CreateCell(33);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i, i, 31, 33));
|
||||||
|
cell = row.CreateCell(34);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i-1, i, 34, 34));
|
||||||
|
cell = row.CreateCell(35);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i - 1, i, 35, 35));
|
||||||
|
cell = row.CreateCell(36);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i - 1, i, 36, 36));
|
||||||
|
cell = row.CreateCell(37);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i - 1, i, 37, 37));
|
||||||
|
cell = row.CreateCell(38);
|
||||||
|
cell.CellStyle = cellStyle;
|
||||||
|
cell.SetCellValue(string.Empty);
|
||||||
|
sheet.AddMergedRegion(new CellRangeAddress(i - 1, i, 38, 38));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
i++;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// 第三步:写入文件流
|
||||||
|
using (FileStream stream = new FileStream(newUrl, FileMode.Create, FileAccess.Write))
|
||||||
|
{
|
||||||
|
workbook.Write(stream);
|
||||||
|
workbook.Close();
|
||||||
|
}
|
||||||
|
string fileName = Path.GetFileName(newUrl);
|
||||||
|
FileInfo info = new FileInfo(newUrl);
|
||||||
|
long fileSize = info.Length;
|
||||||
|
Response.Clear();
|
||||||
|
Response.ContentType = "application/x-zip-compressed";
|
||||||
|
Response.AddHeader("Content-Disposition", "attachment;filename=" + System.Web.HttpUtility.UrlEncode(fileName, System.Text.Encoding.UTF8));
|
||||||
|
Response.AddHeader("Content-Length", fileSize.ToString());
|
||||||
|
Response.TransmitFile(newUrl, 0, fileSize);
|
||||||
|
Response.Flush();
|
||||||
|
Response.Close();
|
||||||
|
File.Delete(newUrl);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private string GetNum(int i)
|
||||||
|
{
|
||||||
|
string num = string.Empty;
|
||||||
|
if (i == 1)
|
||||||
|
{
|
||||||
|
num = "一";
|
||||||
|
}
|
||||||
|
else if (i == 2)
|
||||||
|
{
|
||||||
|
num = "二";
|
||||||
|
}
|
||||||
|
else if (i == 3)
|
||||||
|
{
|
||||||
|
num = "三";
|
||||||
|
}
|
||||||
|
else if (i == 4)
|
||||||
|
{
|
||||||
|
num = "四";
|
||||||
|
}
|
||||||
|
else if (i == 5)
|
||||||
|
{
|
||||||
|
num = "五";
|
||||||
|
}
|
||||||
|
else if (i == 6)
|
||||||
|
{
|
||||||
|
num = "六";
|
||||||
|
}
|
||||||
|
else if (i == 7)
|
||||||
|
{
|
||||||
|
num = "七";
|
||||||
|
}
|
||||||
|
else if (i == 8)
|
||||||
|
{
|
||||||
|
num = "八";
|
||||||
|
}
|
||||||
|
else if (i == 9)
|
||||||
|
{
|
||||||
|
num = "九";
|
||||||
|
}
|
||||||
|
else if (i == 10)
|
||||||
|
{
|
||||||
|
num = "十";
|
||||||
|
}
|
||||||
|
else if (i == 11)
|
||||||
|
{
|
||||||
|
num = "十一";
|
||||||
|
}
|
||||||
|
else if (i == 12)
|
||||||
|
{
|
||||||
|
num = "十二";
|
||||||
|
}
|
||||||
|
return num;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -84,6 +84,15 @@ namespace FineUIPro.Web.ZHGL.TestRunPerformance {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button btnNew;
|
protected global::FineUIPro.Button btnNew;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// lk 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.LinkButtonField lk;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// ToolbarSeparator1 控件。
|
/// ToolbarSeparator1 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -50,7 +50,7 @@ namespace FineUIPro.Web.common
|
||||||
int wHours = 0;
|
int wHours = 0;
|
||||||
DateTime? sDate = Funs.GetNewDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString());
|
DateTime? sDate = Funs.GetNewDateTime(DateTime.Now.Year.ToString() + "-" + DateTime.Now.Month.ToString());
|
||||||
wHours = (from x in db.T_d_EmployInOutRecord where x.ProjectId == ProjectId select x.ManHours ?? 0).ToList().Sum();
|
wHours = (from x in db.T_d_EmployInOutRecord where x.ProjectId == ProjectId select x.ManHours ?? 0).ToList().Sum();
|
||||||
this.divSafeWorkTime.InnerHtml = wHours.ToString();
|
//this.divSafeWorkTime.InnerHtml = wHours.ToString();
|
||||||
|
|
||||||
//本月安全人工时
|
//本月安全人工时
|
||||||
int wHoursMonth = 0;
|
int wHoursMonth = 0;
|
||||||
|
|
@ -59,14 +59,14 @@ namespace FineUIPro.Web.common
|
||||||
{
|
{
|
||||||
wHoursMonth = Convert.ToInt32(dayReports[0].DayWorkTime);
|
wHoursMonth = Convert.ToInt32(dayReports[0].DayWorkTime);
|
||||||
}
|
}
|
||||||
this.divSafeWorkTimeMonth.InnerHtml = wHoursMonth.ToString();
|
//this.divSafeWorkTimeMonth.InnerHtml = wHoursMonth.ToString();
|
||||||
|
|
||||||
//安全培训累计人员
|
//安全培训累计人员
|
||||||
var getTrainRecord = db.EduTrain_TrainRecord.Where(x => x.ProjectId == ProjectId).Sum(x => x.TrainPersonNum) ?? 0;
|
var getTrainRecord = db.EduTrain_TrainRecord.Where(x => x.ProjectId == ProjectId).Sum(x => x.TrainPersonNum) ?? 0;
|
||||||
//修改:增加博晟教育中的人数
|
//修改:增加博晟教育中的人数
|
||||||
var boShengCount = db.Bo_Sheng_TrainPerson.Where(x => x.ProjectId == ProjectId && (x.DeleteTag == "False" || x.DeleteTag == null)).ToList().Count;
|
var boShengCount = db.Bo_Sheng_TrainPerson.Where(x => x.ProjectId == ProjectId && (x.DeleteTag == "False" || x.DeleteTag == null)).ToList().Count;
|
||||||
|
|
||||||
this.divSafePersonNum.InnerHtml = (getTrainRecord + boShengCount).ToString();
|
//this.divSafePersonNum.InnerHtml = (getTrainRecord + boShengCount).ToString();
|
||||||
|
|
||||||
//安全管理人员
|
//安全管理人员
|
||||||
var allSum = from x in Funs.DB.SitePerson_Person
|
var allSum = from x in Funs.DB.SitePerson_Person
|
||||||
|
|
@ -77,7 +77,7 @@ namespace FineUIPro.Web.common
|
||||||
join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId
|
join y in Funs.DB.Base_WorkPost on x.WorkPostId equals y.WorkPostId
|
||||||
where y.IsHsse == true && x.ProjectId == ProjectId //安管人员
|
where y.IsHsse == true && x.ProjectId == ProjectId //安管人员
|
||||||
select x;
|
select x;
|
||||||
this.divSafeManagePersonNum.InnerHtml = glAllPerson.Count().ToString();
|
//this.divSafeManagePersonNum.InnerHtml = glAllPerson.Count().ToString();
|
||||||
|
|
||||||
//未遂事故
|
//未遂事故
|
||||||
var wsAccidentList1 = from x in db.Accident_AccidentPersonRecord
|
var wsAccidentList1 = from x in db.Accident_AccidentPersonRecord
|
||||||
|
|
@ -88,7 +88,7 @@ namespace FineUIPro.Web.common
|
||||||
join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue
|
join y in db.Sys_Const on x.AccidentTypeId equals y.ConstValue
|
||||||
where y.ConstText.Contains("未遂") && x.ProjectId == ProjectId
|
where y.ConstText.Contains("未遂") && x.ProjectId == ProjectId
|
||||||
select x;
|
select x;
|
||||||
this.divWS.InnerHtml = (wsAccidentList1.Count() + wsAccidentList2.Count()).ToString();
|
//this.divWS.InnerHtml = (wsAccidentList1.Count() + wsAccidentList2.Count()).ToString();
|
||||||
|
|
||||||
//整改数据
|
//整改数据
|
||||||
getZgsj();
|
getZgsj();
|
||||||
|
|
@ -104,12 +104,12 @@ namespace FineUIPro.Web.common
|
||||||
int CqmsPxNum = (from x in Funs.DB.Comprehensive_InspectionPerson
|
int CqmsPxNum = (from x in Funs.DB.Comprehensive_InspectionPerson
|
||||||
where x.IsTrain == true && x.ProjectId == ProjectId
|
where x.IsTrain == true && x.ProjectId == ProjectId
|
||||||
select x).Count();
|
select x).Count();
|
||||||
divCqmsPxNum.InnerHtml = CqmsPxNum.ToString();
|
//divCqmsPxNum.InnerHtml = CqmsPxNum.ToString();
|
||||||
|
|
||||||
//施工审批量
|
//施工审批量
|
||||||
int sgspl = Funs.DB.Comprehensive_GeneralPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count()
|
int sgspl = Funs.DB.Comprehensive_GeneralPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count()
|
||||||
+ Funs.DB.Comprehensive_MajorPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count();
|
+ Funs.DB.Comprehensive_MajorPlanApproval.Where(x => x.ProjectId == ProjectId && x.AuditMan != null && x.AuditMan != "" && x.ApprovalMan != null && x.ApprovalMan != "").Count();
|
||||||
div_sgfaSpl.InnerHtml = sgspl.ToString();
|
//div_sgfaSpl.InnerHtml = sgspl.ToString();
|
||||||
GetJD();
|
GetJD();
|
||||||
//质量共检
|
//质量共检
|
||||||
getZlgj();
|
getZlgj();
|
||||||
|
|
@ -150,11 +150,11 @@ namespace FineUIPro.Web.common
|
||||||
if (AllCount > 0)
|
if (AllCount > 0)
|
||||||
{
|
{
|
||||||
////当前现场总人数
|
////当前现场总人数
|
||||||
div_xcrs.InnerHtml = AllCount.ToString();
|
//div_xcrs.InnerHtml = AllCount.ToString();
|
||||||
//作业人数
|
//作业人数
|
||||||
div_zyxcrs.InnerHtml = (AllCount - MCount).ToString();
|
//div_zyxcrs.InnerHtml = (AllCount - MCount).ToString();
|
||||||
//管理人数
|
//管理人数
|
||||||
div_glxcrs.InnerHtml = MCount.ToString();
|
//div_glxcrs.InnerHtml = MCount.ToString();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
@ -182,10 +182,10 @@ namespace FineUIPro.Web.common
|
||||||
#region 整改数据
|
#region 整改数据
|
||||||
protected void getZgsj()
|
protected void getZgsj()
|
||||||
{
|
{
|
||||||
div_zgsj.InnerHtml = (GetGeneralClosedNum() + GetGeneralNotClosedNum()).ToString();
|
//div_zgsj.InnerHtml = (GetGeneralClosedNum() + GetGeneralNotClosedNum()).ToString();
|
||||||
div_zgywc.InnerHtml = GetGeneralClosedNum().ToString();
|
//div_zgywc.InnerHtml = GetGeneralClosedNum().ToString();
|
||||||
div_zgwwc.InnerHtml = GetGeneralNotClosedNum().ToString();
|
//div_zgwwc.InnerHtml = GetGeneralNotClosedNum().ToString();
|
||||||
div_zgwcl.InnerHtml = String.Format("{0:N2}", 100.0 * GetGeneralClosedNum() / (GetGeneralNotClosedNum() + GetGeneralClosedNum())).Replace("NaN", "0") + "%";
|
//div_zgwcl.InnerHtml = String.Format("{0:N2}", 100.0 * GetGeneralClosedNum() / (GetGeneralNotClosedNum() + GetGeneralClosedNum())).Replace("NaN", "0") + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -288,18 +288,18 @@ namespace FineUIPro.Web.common
|
||||||
//this.divProjectMoney.InnerHtml = divProjectMoneyTitle = project.ProjectMoney.ToString() + "万元";
|
//this.divProjectMoney.InnerHtml = divProjectMoneyTitle = project.ProjectMoney.ToString() + "万元";
|
||||||
if (project.EndDate.HasValue)
|
if (project.EndDate.HasValue)
|
||||||
{
|
{
|
||||||
this.divEndDate.InnerHtml = string.Format("{0:yyyy-MM-dd}", project.EndDate);
|
//this.divEndDate.InnerHtml = string.Format("{0:yyyy-MM-dd}", project.EndDate);
|
||||||
int endDays = (project.EndDate.Value - DateTime.Now).Days;
|
int endDays = (project.EndDate.Value - DateTime.Now).Days;
|
||||||
if (endDays >= 0)
|
if (endDays >= 0)
|
||||||
{
|
{
|
||||||
this.divRemainingDays.InnerHtml = endDays.ToString() + "<span>天</span>";
|
//this.divRemainingDays.InnerHtml = endDays.ToString() + "<span>天</span>";
|
||||||
}
|
}
|
||||||
if (project.StartDate.HasValue)
|
if (project.StartDate.HasValue)
|
||||||
{
|
{
|
||||||
int pdays = (project.EndDate.Value - project.StartDate.Value).Days;
|
int pdays = (project.EndDate.Value - project.StartDate.Value).Days;
|
||||||
if (pdays >= 0)
|
if (pdays >= 0)
|
||||||
{
|
{
|
||||||
this.divProjectDays.InnerHtml = pdays.ToString() + "<span>天</span>";
|
//this.divProjectDays.InnerHtml = pdays.ToString() + "<span>天</span>";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -987,12 +987,12 @@ namespace FineUIPro.Web.common
|
||||||
SqlParameter[] parameter = listStr.ToArray();
|
SqlParameter[] parameter = listStr.ToArray();
|
||||||
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
|
||||||
var Gjsxcount = tb.Rows.Count;
|
var Gjsxcount = tb.Rows.Count;
|
||||||
div_gjsx.InnerHtml = Gjsxcount.ToString();
|
//div_gjsx.InnerHtml = Gjsxcount.ToString();
|
||||||
|
|
||||||
var getDataList = Funs.DB.Sp_Project_GetToDoItems(this.CurrUser.LoginProjectId, this.CurrUser.UserId).ToList();
|
var getDataList = Funs.DB.Sp_Project_GetToDoItems(this.CurrUser.LoginProjectId, this.CurrUser.UserId).ToList();
|
||||||
//待办事项、个人流程
|
//待办事项、个人流程
|
||||||
div_dbsx.InnerHtml = getDataList.Count().ToString();
|
//div_dbsx.InnerHtml = getDataList.Count().ToString();
|
||||||
div_grlc.InnerHtml = getDataList.Count().ToString();
|
//div_grlc.InnerHtml = getDataList.Count().ToString();
|
||||||
foreach (var item in getDataList)
|
foreach (var item in getDataList)
|
||||||
{
|
{
|
||||||
returnDbHtml += "<div class=\"li\" style=\"cursor:pointer\" onclick=\"returnWindows('" + item.PCUrl + "')\"><span>" + item.MenuName + "</span><span>" + item.Content + "</span><span>" +
|
returnDbHtml += "<div class=\"li\" style=\"cursor:pointer\" onclick=\"returnWindows('" + item.PCUrl + "')\"><span>" + item.MenuName + "</span><span>" + item.Content + "</span><span>" +
|
||||||
|
|
@ -1003,7 +1003,7 @@ namespace FineUIPro.Web.common
|
||||||
{
|
{
|
||||||
returnDbHtml = "<div></div>";
|
returnDbHtml = "<div></div>";
|
||||||
}
|
}
|
||||||
this.div_dbsxlist.InnerHtml = returnDbHtml;
|
//this.div_dbsxlist.InnerHtml = returnDbHtml;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
@ -1051,7 +1051,7 @@ namespace FineUIPro.Web.common
|
||||||
{
|
{
|
||||||
returnDbHtml = "<div></div>";
|
returnDbHtml = "<div></div>";
|
||||||
}
|
}
|
||||||
this.div_gjsxlist.InnerHtml = returnDbHtml;
|
//this.div_gjsxlist.InnerHtml = returnDbHtml;
|
||||||
|
|
||||||
List<SqlParameter> listStaticListStr = new List<SqlParameter>();
|
List<SqlParameter> listStaticListStr = new List<SqlParameter>();
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,10 @@
|
||||||
// </自动生成>
|
// </自动生成>
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
namespace FineUIPro.Web.common
|
namespace FineUIPro.Web.common {
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
public partial class mainProject2
|
public partial class mainProject2 {
|
||||||
{
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// form1 控件。
|
/// form1 控件。
|
||||||
|
|
@ -32,240 +30,6 @@ namespace FineUIPro.Web.common
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.PageManager PageManager1;
|
protected global::FineUIPro.PageManager PageManager1;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeWorkTime 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTime;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeWorkTimeMonth 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTimeMonth;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafePersonNum 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafePersonNum;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeManagePersonNum 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeManagePersonNum;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divWS 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divWS;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_zgsj 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zgsj;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_zgywc 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zgywc;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_zgwwc 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zgwwc;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_zgwcl 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zgwcl;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divProjectDays 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divProjectDays;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divEndDate 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divEndDate;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divRemainingDays 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divRemainingDays;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divCqmsPxNum 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divCqmsPxNum;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_sgfaSpl 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_sgfaSpl;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_Gzgjsx 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_Gzgjsx;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_gjsx 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_gjsx;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_Gzdbsx 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_Gzdbsx;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_dbsx 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_dbsx;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_Gzgrlc 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_Gzgrlc;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_grlc 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_grlc;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_ybrw 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_ybrw;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_gjsxlist 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_gjsxlist;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_dbsxlist 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_dbsxlist;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_xcrs 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_xcrs;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_zyxcrs 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zyxcrs;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// div_glxcrs 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_glxcrs;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// hiddenUrl 控件。
|
/// hiddenUrl 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -97,9 +97,9 @@ namespace FineUIPro.Web.common
|
||||||
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true select x).Count();
|
pcount2 = (from x in Funs.DB.SitePerson_Person where x.IsUsed == true select x).Count();
|
||||||
pcount3 = Count3();
|
pcount3 = Count3();
|
||||||
}
|
}
|
||||||
div_zjxmCount.InnerText = pcount1.ToString();
|
div_zjxmCount.InnerHtml = pcount1.ToString() + "<div class=\"th\">个</div>";
|
||||||
div_cjrsCount.InnerText = pcount2.ToString();
|
div_cjrsCount.InnerHtml = pcount2.ToString() + "<div class=\"th\">人</div>";
|
||||||
div_wdgcCount.InnerText = pcount3.ToString();
|
div_wdgcCount.InnerHtml = pcount3.ToString() + "<div class=\"th\">个</div>";
|
||||||
|
|
||||||
//质量问题
|
//质量问题
|
||||||
getZlwt();
|
getZlwt();
|
||||||
|
|
@ -476,6 +476,50 @@ namespace FineUIPro.Web.common
|
||||||
return JsonConvert.SerializeObject(series);
|
return JsonConvert.SerializeObject(series);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
#region 项目信息
|
||||||
|
protected string Project2
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
Model.SingleSerie series = new Model.SingleSerie();
|
||||||
|
var project1s = allProjects.Where(x => x.ProjectState == Const.ProjectState_1 || x.ProjectState == null);
|
||||||
|
Model.SGGLDB db = Funs.DB;
|
||||||
|
string str = string.Empty;
|
||||||
|
foreach (var item in allProjects)
|
||||||
|
{
|
||||||
|
if (!string.IsNullOrEmpty(item.MapCoordinates))
|
||||||
|
{
|
||||||
|
string startDate = string.Empty;
|
||||||
|
string endDate = string.Empty;
|
||||||
|
string residueDay = string.Empty;
|
||||||
|
if (item.StartDate != null)
|
||||||
|
{
|
||||||
|
startDate = string.Format("{0:yyyy-MM-dd}", item.StartDate);
|
||||||
|
}
|
||||||
|
if (item.EndDate != null)
|
||||||
|
{
|
||||||
|
endDate = string.Format("{0:yyyy-MM-dd}", item.EndDate);
|
||||||
|
//获取剩余天数
|
||||||
|
residueDay = DateDiff(DateTime.Now, Convert.ToDateTime(item.EndDate)).ToString();
|
||||||
|
}
|
||||||
|
decimal jdNum = 0;
|
||||||
|
if (item.Progress != null)
|
||||||
|
{
|
||||||
|
jdNum = item.Progress.Value;
|
||||||
|
}
|
||||||
|
|
||||||
|
str += "{name: '" + item.ShortName + "', value: [" + item.MapCoordinates + ", { value:'" + item.ShortName + "',value2:'" + startDate + "',value3:'" + endDate + "',value4:'" + residueDay + "',value5:'" + jdNum.ToString("0.##") + "%'}]},";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (!string.IsNullOrEmpty(str))
|
||||||
|
{
|
||||||
|
str = str.Substring(0, str.Length - 1);
|
||||||
|
}
|
||||||
|
return str;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 计算时间的相差天数
|
/// 计算时间的相差天数
|
||||||
|
|
@ -501,7 +545,7 @@ namespace FineUIPro.Web.common
|
||||||
protected int Count3()
|
protected int Count3()
|
||||||
{
|
{
|
||||||
int cout1 = 0;
|
int cout1 = 0;
|
||||||
cout1 = LargerHazard.Where(x => x.States == Const.State_2).Count();
|
cout1 = Funs.DB.Solution_LargerHazard.Where(x => x.States == Const.State_2).Count();
|
||||||
return cout1;
|
return cout1;
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
@ -669,8 +713,6 @@ namespace FineUIPro.Web.common
|
||||||
MCount = getallin.Where(x => x.PostType == Const.PostType_1).Count();
|
MCount = getallin.Where(x => x.PostType == Const.PostType_1).Count();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AllCount > 0)
|
|
||||||
{
|
|
||||||
////当前现场总人数
|
////当前现场总人数
|
||||||
div_xcrs.InnerHtml = AllCount.ToString();
|
div_xcrs.InnerHtml = AllCount.ToString();
|
||||||
//作业人数
|
//作业人数
|
||||||
|
|
@ -678,7 +720,6 @@ namespace FineUIPro.Web.common
|
||||||
//管理人数
|
//管理人数
|
||||||
div_glxcrs.InnerHtml = MCount.ToString();
|
div_glxcrs.InnerHtml = MCount.ToString();
|
||||||
}
|
}
|
||||||
}
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 项目人员图表
|
#region 项目人员图表
|
||||||
|
|
@ -705,7 +746,7 @@ namespace FineUIPro.Web.common
|
||||||
var list = Funs.DB.Base_Project.Where(x => (x.ProjectState == Const.ProjectState_1 || x.ProjectState == null) && x.Progress != null).ToList();
|
var list = Funs.DB.Base_Project.Where(x => (x.ProjectState == Const.ProjectState_1 || x.ProjectState == null) && x.Progress != null).ToList();
|
||||||
foreach (var item in list)
|
foreach (var item in list)
|
||||||
{
|
{
|
||||||
ProjectJd += "'" + item.Progress + "',";
|
ProjectJd += "'" + item.Progress.Value.ToString("0.##") + "',";
|
||||||
ProjectMc += "'" + item.ShortName + "',";
|
ProjectMc += "'" + item.ShortName + "',";
|
||||||
}
|
}
|
||||||
ProjectJd = ProjectJd.TrimEnd(',');
|
ProjectJd = ProjectJd.TrimEnd(',');
|
||||||
|
|
@ -719,7 +760,7 @@ namespace FineUIPro.Web.common
|
||||||
div_zgsj.InnerHtml = (GetGeneralClosedNum() + GetGeneralNotClosedNum()).ToString();
|
div_zgsj.InnerHtml = (GetGeneralClosedNum() + GetGeneralNotClosedNum()).ToString();
|
||||||
div_zgywc.InnerHtml = GetGeneralClosedNum().ToString();
|
div_zgywc.InnerHtml = GetGeneralClosedNum().ToString();
|
||||||
div_zgwwc.InnerHtml = GetGeneralNotClosedNum().ToString();
|
div_zgwwc.InnerHtml = GetGeneralNotClosedNum().ToString();
|
||||||
div_zgwcl.InnerHtml = String.Format("{0:N2}", 100.0 * GetGeneralClosedNum() / (GetGeneralNotClosedNum() + GetGeneralClosedNum())) + "%";
|
div_zgwcl.InnerHtml = (100.0 * GetGeneralClosedNum() / (GetGeneralNotClosedNum() + GetGeneralClosedNum())).ToString("0.##") + "%";
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
@ -750,8 +791,8 @@ namespace FineUIPro.Web.common
|
||||||
protected string gdclHtml;
|
protected string gdclHtml;
|
||||||
protected string sbclHtml;
|
protected string sbclHtml;
|
||||||
|
|
||||||
protected string gdclHead = "<span>项目</span><span>管子</span><span>管件</span><span>阀门</span><span>垫片</span><span>紧固件</span>";
|
protected string gdclHead = "<div class=\"th-p\">项目</div><div class=\"th-p\">管子</div><div class=\"th-p\">管件</div><div class=\"th-p\">阀门</div><div class=\"th-p\">垫片</div><div class=\"th-p\">紧固件</div>";
|
||||||
protected string sbclHead = "<span>项目</span><span>采购量</span><span>到货量</span><span>已到货百分比</span>";
|
protected string sbclHead = "<div class=\"th-p\">项目</div><div class=\"th-p\">采购量</div><div class=\"th-p\">到货量</div><div class=\"th-p\">已到货百分比</div>";
|
||||||
private void getCldh()
|
private void getCldh()
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|
@ -762,73 +803,73 @@ namespace FineUIPro.Web.common
|
||||||
foreach (var item in list)
|
foreach (var item in list)
|
||||||
{
|
{
|
||||||
#region 管道材料
|
#region 管道材料
|
||||||
gdclHtml += " <div class=\"tr\">";
|
gdclHtml += " <div class=\"row\">";
|
||||||
var pname = item.ShortName;
|
var pname = item.ShortName;
|
||||||
if (item.ShortName.Length > 3)
|
if (item.ShortName.Length > 3)
|
||||||
{
|
{
|
||||||
pname = item.ShortName.Substring(0, 3) + "...";
|
pname = item.ShortName.Substring(0, 3) + "...";
|
||||||
}
|
}
|
||||||
|
|
||||||
gdclHtml += "<span title=\"" + item.ShortName + "\">" + pname + "</span>";
|
gdclHtml += "<div class=\"th-p\" title =\"" + item.ShortName + "\">" + pname + "</div>";
|
||||||
var pid = BLL.ProjectService.GetCLProjectCodeByProjectId(item.ProjectId).ToString();
|
var pid = BLL.ProjectService.GetCLProjectCodeByProjectId(item.ProjectId).ToString();
|
||||||
//管子
|
//管子
|
||||||
var num1 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "管子").FirstOrDefault();
|
var num1 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "管子").FirstOrDefault();
|
||||||
if (num1 != null)
|
if (num1 != null)
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>" + (num1.C7 == "" ? "0%" : num1.C7) + "</span>";
|
gdclHtml += "<div class=\"th-p\">" + (num1.C7 == "" ? "0%" : num1.C7) + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>0%</span>";
|
gdclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
var num2 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "管件法兰").FirstOrDefault();
|
var num2 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "管件法兰").FirstOrDefault();
|
||||||
if (num2 != null)
|
if (num2 != null)
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>" + (num2.C7 == "" ? "0%" : num2.C7) + "</span>";
|
gdclHtml += "<div class=\"th-p\">" + (num2.C7 == "" ? "0%" : num2.C7) + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>0%</span>";
|
gdclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
var num3 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "阀门").FirstOrDefault();
|
var num3 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "阀门").FirstOrDefault();
|
||||||
if (num3 != null)
|
if (num3 != null)
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>" + (num3.C7 == "" ? "0%" : num3.C7) + "</span>";
|
gdclHtml += "<div class=\"th-p\">" + (num3.C7 == "" ? "0%" : num3.C7) + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>0%</span>";
|
gdclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
var num4 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "垫片").FirstOrDefault();
|
var num4 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "垫片").FirstOrDefault();
|
||||||
if (num4 != null)
|
if (num4 != null)
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>" + (num4.C7 == "" ? "0%" : num4.C7) + "</span>";
|
gdclHtml += "<div class=\"th-p\">" + (num4.C7 == "" ? "0%" : num4.C7) + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>0%</span>";
|
gdclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
var num5 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "紧固件").FirstOrDefault();
|
var num5 = PipelinList.Where(x => x.ProjectId == pid && x.C1 == "紧固件").FirstOrDefault();
|
||||||
if (num5 != null)
|
if (num5 != null)
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>" + (num5.C7 == "" ? "0%" : num5.C7) + "</span>";
|
gdclHtml += "<div class=\"th-p\">" + (num5.C7 == "" ? "0%" : num5.C7) + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
gdclHtml += "<span>0%</span>";
|
gdclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
gdclHtml += " </div>";
|
gdclHtml += " </div>";
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region 设备材料
|
#region 设备材料
|
||||||
sbclHtml += " <div class=\"tr\">";
|
sbclHtml += " <div class=\"row\">";
|
||||||
pname = item.ShortName;
|
pname = item.ShortName;
|
||||||
if (item.ShortName.Length > 5)
|
if (item.ShortName.Length > 5)
|
||||||
{
|
{
|
||||||
pname = item.ShortName.Substring(0, 5) + "...";
|
pname = item.ShortName.Substring(0, 5) + "...";
|
||||||
}
|
}
|
||||||
sbclHtml += "<span title=\"" + item.ShortName + "\">" + pname + "</span>";
|
sbclHtml += "<div class=\"th-p\" title=\"" + item.ShortName + "\">" + pname + "</div>";
|
||||||
//采购量
|
//采购量
|
||||||
var SbcllCglList = SbclList.Where(x => x.ProjectId == pid).ToList();
|
var SbcllCglList = SbclList.Where(x => x.ProjectId == pid).ToList();
|
||||||
double SbcllCgl = 0.0;
|
double SbcllCgl = 0.0;
|
||||||
|
|
@ -847,17 +888,17 @@ namespace FineUIPro.Web.common
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sbclHtml += "<span>" + SbcllCgl + "</span>";
|
sbclHtml += "<div class=\"th-p\">" + SbcllCgl + "</div>";
|
||||||
sbclHtml += "<span>" + Sbdhs + "</span>";
|
sbclHtml += "<div class=\"th-p\">" + Sbdhs + "</div>";
|
||||||
//百分比
|
//百分比
|
||||||
if (SbcllCgl + Sbdhs != 0)
|
if (SbcllCgl + Sbdhs != 0)
|
||||||
{
|
{
|
||||||
var dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%";
|
var dhbfb = String.Format("{0:N2}", 100.0 * Sbdhs / (Sbdhs + SbcllCgl), 2) + "%";
|
||||||
sbclHtml += "<span>" + dhbfb + "</span>";
|
sbclHtml += "<div class=\"th-p\">" + dhbfb + "</div>";
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
sbclHtml += "<span>0%</span>";
|
sbclHtml += "<div class=\"th-p\">0%</div>";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,10 @@
|
||||||
// </自动生成>
|
// </自动生成>
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
namespace FineUIPro.Web.common
|
namespace FineUIPro.Web.common {
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
public partial class main_new
|
public partial class main_new {
|
||||||
{
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// form1 控件。
|
/// form1 控件。
|
||||||
|
|
@ -23,51 +21,6 @@ namespace FineUIPro.Web.common
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeWorkTime 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTime;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeWorkTimeMonth 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTimeMonth;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafePersonNum 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafePersonNum;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divSafeManagePersonNum 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeManagePersonNum;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// divWS 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divWS;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// div_zgsj 控件。
|
/// div_zgsj 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -123,31 +76,76 @@ namespace FineUIPro.Web.common
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divCqmsPxNum;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divCqmsPxNum;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// divGjsxzj 控件。
|
/// div_xcrs 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxzj;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_xcrs;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// divGjsxdq 控件。
|
/// div_zyxcrs 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxdq;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zyxcrs;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// divGjsxwzd 控件。
|
/// div_glxcrs 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxwzd;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_glxcrs;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// divSafeWorkTime 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTime;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// divSafeWorkTimeMonth 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeWorkTimeMonth;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// divSafePersonNum 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafePersonNum;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// divSafeManagePersonNum 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divSafeManagePersonNum;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// divWS 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divWS;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// div_zjxmCount 控件。
|
/// div_zjxmCount 控件。
|
||||||
|
|
@ -177,30 +175,30 @@ namespace FineUIPro.Web.common
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_wdgcCount;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_wdgcCount;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// div_xcrs 控件。
|
/// divGjsxzj 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_xcrs;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxzj;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// div_zyxcrs 控件。
|
/// divGjsxdq 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_zyxcrs;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxdq;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// div_glxcrs 控件。
|
/// divGjsxwzd 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
/// <remarks>
|
/// <remarks>
|
||||||
/// 自动生成的字段。
|
/// 自动生成的字段。
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::System.Web.UI.HtmlControls.HtmlGenericControl div_glxcrs;
|
protected global::System.Web.UI.HtmlControls.HtmlGenericControl divGjsxwzd;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -12,6 +12,11 @@
|
||||||
|
|
||||||
<link rel="stylesheet" href="common/css/base.css">
|
<link rel="stylesheet" href="common/css/base.css">
|
||||||
<link rel="stylesheet" href="common/css/overview.css">
|
<link rel="stylesheet" href="common/css/overview.css">
|
||||||
|
<script src="res/lib/flex.js"></script>
|
||||||
|
<script src="res/lib/jquery.js"></script>
|
||||||
|
<script src="res/lib/china.js"></script>
|
||||||
|
<script src="res/lib/echarts.min.js"></script>
|
||||||
|
<link rel="stylesheet" href="res/css/company.css">
|
||||||
|
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
.f-tabstrip-header-clip {
|
.f-tabstrip-header-clip {
|
||||||
|
|
@ -98,7 +103,8 @@
|
||||||
.f-panel, .f-widget-header, .f-tree-headerstyle .f-panel-body {
|
.f-panel, .f-widget-header, .f-tree-headerstyle .f-panel-body {
|
||||||
background-color: #000231;
|
background-color: #000231;
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border: none !important;height:35px;
|
border: none !important;
|
||||||
|
height: 35px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.f-menu-item-text, .f-tree-cell-text, .f-widget-content a, .f-qtip-content {
|
.f-menu-item-text, .f-tree-cell-text, .f-widget-content a, .f-qtip-content {
|
||||||
|
|
@ -130,8 +136,9 @@
|
||||||
color: #fff;
|
color: #fff;
|
||||||
border: none !important;
|
border: none !important;
|
||||||
}
|
}
|
||||||
.f-widget-content{
|
|
||||||
color:#FFFFFF;
|
.f-widget-content {
|
||||||
|
color: #FFFFFF;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
||||||
<style type="text/css">
|
<style type="text/css">
|
||||||
|
|
@ -158,7 +165,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
/*头部按钮样式*/
|
/*头部按钮样式*/
|
||||||
.bgbtn_head{
|
.bgbtn_head {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
width: 40%;
|
width: 40%;
|
||||||
|
|
@ -169,6 +176,13 @@
|
||||||
border: none !important;
|
border: none !important;
|
||||||
padding: 0 !important;
|
padding: 0 !important;
|
||||||
}
|
}
|
||||||
|
.f-btn .f-btn-text{
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
}
|
||||||
|
.n-btns-r .n-btn-l-act{
|
||||||
|
background-image: url(./res/images/03.png) !important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
</head>
|
</head>
|
||||||
<body class="wrap">
|
<body class="wrap">
|
||||||
|
|
@ -179,102 +193,92 @@
|
||||||
<f:ContentPanel ID="topPanel" CssClass="topregion" RegionPosition="Top" ShowBorder="false" ShowHeader="false" EnableCollapse="true" runat="server">
|
<f:ContentPanel ID="topPanel" CssClass="topregion" RegionPosition="Top" ShowBorder="false" ShowHeader="false" EnableCollapse="true" runat="server">
|
||||||
<%--头部 开始--%>
|
<%--头部 开始--%>
|
||||||
<f:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server">
|
<f:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server">
|
||||||
<div class="y_head ">
|
<div class="header">
|
||||||
<div class="y_logo y_row y_image_default">
|
<div class="nav-left">
|
||||||
<div class="y_navbars y_row">
|
<div class="nav-btn t-btns">
|
||||||
<div class="y_navbar y_action1" id="div_xmgk" onclick="changeHead(0)">项目概况
|
<div class="t-btn t-btn-act" id="div_xmgk" onclick="changeHead(0)" style="cursor:pointer">项目概况
|
||||||
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnXmgk_Click" Hidden="true"
|
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnXmgk_Click" Hidden="true"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_xmgk"
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_xmgk"
|
||||||
OnClientClick="parent.removeActiveTab();">
|
OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button></div>
|
||||||
</div>
|
<div class="t-btn" id="div_aqsc" onclick="changeHead(1)" style="cursor:pointer">安全生产
|
||||||
<div class="y_navbar" id="div_aqsc" onclick="changeHead(1)">安全生产
|
|
||||||
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnAqsc_Click" Hidden="true"
|
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnAqsc_Click" Hidden="true"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_aqsc"
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_aqsc"
|
||||||
OnClientClick="parent.removeActiveTab();">
|
OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_navbar" id="div_zlgl" onclick="changeHead(2)">质量管理
|
<div class="t-btn" id="div_zlgl" onclick="changeHead(2)" style="cursor:pointer">质量管理
|
||||||
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnZlgl_Click" Hidden="true"
|
<f:Button runat="server" CssClass="bgbtntop" OnClick="btnZlgl_Click" Hidden="true"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_zlgl"
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btn_zlgl"
|
||||||
OnClientClick="parent.removeActiveTab();">
|
OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_title" style="flex: 1.5;">中国五环工程有限公司智慧施工管理信息系统(公司级)
|
<div class="nav-btn n-btns-l">
|
||||||
<f:Button runat="server" CssClass="bgbtn_head" EnablePostBack="true" OnClick="btnHome_Click"
|
<div class="n-btn-l" >
|
||||||
EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHome" OnClientClick="parent.removeActiveTab();">
|
<f:Button runat="server" Text="项目清单" ID="btnProject" OnClick="btnProject_Click"
|
||||||
</f:Button>
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
|
</f:Button></div>
|
||||||
|
<div class="n-btn-l" >
|
||||||
|
<f:Button runat="server" Text="大数据中心" ID="btnDigData" OnClick="btnDigData_Click"
|
||||||
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
|
</f:Button></div>
|
||||||
|
<div class="n-btn-l" >
|
||||||
|
<f:Button runat="server" Text="总部检查" ID="btnServer" OnClick="btnServer_Click"
|
||||||
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
|
</f:Button></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_setting y_row">
|
</div>
|
||||||
<div class="y_set mine y_image_default" onclick="PersonalFunction()" style="cursor:pointer">
|
<div class="nav-center">
|
||||||
我的
|
<h1>中国五环工程有限公司智慧施工管理信息系统(公司级)<f:Button runat="server" CssClass="bgbtn_head" EnablePostBack="true" OnClick="btnHome_Click"
|
||||||
<f:Button runat="server" CssClass="bgbtntop" Text="我的" IconFont="User" OnClick="btnPersonal_Click" Hidden="true"
|
EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHome" OnClientClick="parent.removeActiveTab();">
|
||||||
|
</f:Button></h1>
|
||||||
|
</div>
|
||||||
|
<div class="nav-right">
|
||||||
|
<div class="btns t-btns t-btn-r">
|
||||||
|
<div class=" t-btn1 iconfont icon-yonghu" onclick="PersonalFunction()" style="cursor:pointer"><span>我的
|
||||||
|
<f:Button runat="server" CssClass="bgbtntop" IconFont="User" OnClick="btnPersonal_Click" Hidden="true"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPersonal" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPersonal" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</span></div>
|
||||||
<div class="y_set y_image_default set" onclick="btnSysSetFunction()" style="cursor:pointer">
|
<div class="t-btn1 iconfont icon-shezhi" onclick="btnSysSetFunction()" style="cursor:pointer"><span>设置
|
||||||
设置
|
<f:Button runat="server" CssClass="bgbtntop" IconFont="Gear" OnClick="btnSysSet_Click" Hidden="true"
|
||||||
<f:Button runat="server" CssClass="bgbtntop" Text="设置" ToolTip="设置" IconFont="Gear" OnClick="btnSysSet_Click" Hidden="true"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnSysSet" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnSysSet" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</span></div>
|
||||||
<%-- <div class="y_set y_image_default help" style="cursor:pointer">
|
<div class="t-btn1 iconfont icon-tuichu" onclick="SignOutFunction()" style="cursor:pointer"><span>退出
|
||||||
帮助
|
<f:Button runat="server" CssClass="bgbtntop" IconFont="PowerOff" Hidden="true"
|
||||||
|
|
||||||
</div>--%>
|
|
||||||
<div class="y_set y_image_default exit" onclick="SignOutFunction()" style="cursor:pointer">
|
|
||||||
退出
|
|
||||||
<f:Button runat="server" CssClass="bgbtntop" Text="退出" ToolTip="退出" IconFont="PowerOff" Hidden="true"
|
|
||||||
EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18">
|
EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18">
|
||||||
<Listeners>
|
<Listeners>
|
||||||
<f:Listener Event="click" Handler="onToolSignOutClick" />
|
<f:Listener Event="click" Handler="onToolSignOutClick" />
|
||||||
</Listeners>
|
</Listeners>
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</span></div>
|
||||||
<div class="y_set y_image_default full" style="cursor:pointer">
|
<div class="t-btn1 iconfont icon-quanping_o ab" style="cursor:pointer"><span>全屏
|
||||||
全屏
|
|
||||||
|
|
||||||
</div>
|
</span></div>
|
||||||
<div>
|
<div>
|
||||||
<f:Button runat="server" CssClass="bgbtntop" Text="" ToolTip="刷新菜单" OnClick="btnRetweet_Click"
|
<f:Button runat="server" CssClass="bgbtntop" Text="" ToolTip="刷新菜单" OnClick="btnRetweet_Click"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnRetweet" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnRetweet" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
<div class="nav-btn n-btns-r">
|
||||||
<div class="y_navs y_row" style="font-size:.2rem;">
|
<div class="n-btn-r" >
|
||||||
<div class="y_nav y_image_default" >
|
<f:Button runat="server" Text="通知管理" ID="btnNotice" OnClick="btnNotice_Click"
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="项目清单" ID="btnProject" OnClick="btnProject_Click"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
|
||||||
</f:Button>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="y_nav y_image_default">
|
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="大数据中心" ID="btnDigData" OnClick="btnDigData_Click"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_nav y_image_default">
|
<div class="n-btn-r" >
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="总部检查" ID="btnServer" OnClick="btnServer_Click"
|
<f:Button runat="server" Text="员工管理" ID="btnPerson" OnClick="btnPerson_Click"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_nav y_image_default">
|
<div class="n-btn-r" >
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="通知管理" ID="btnNotice" OnClick="btnNotice_Click"
|
<f:Button runat="server" Text="综合管理" ID="btnZHGL" OnClick="btnZHGL_Click"
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_nav y_image_default">
|
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="员工管理" ID="btnPerson" OnClick="btnPerson_Click"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
|
||||||
</f:Button>
|
|
||||||
</div>
|
|
||||||
<div class="y_nav y_image_default">
|
|
||||||
<f:Button runat="server" CssClass="bgbtn" Text="综合管理" ID="btnZHGL" OnClick="btnZHGL_Click"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" OnClientClick="parent.removeActiveTab();">
|
|
||||||
</f:Button>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -713,17 +717,20 @@
|
||||||
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
$(".bgbtn,.bgbtntop").removeClass("activeClick")
|
||||||
});
|
});
|
||||||
|
|
||||||
$(".bgbtn,.bgbtntop").click(function () {
|
$(".n-btn-l,.n-btn-r").click(function () {
|
||||||
// 切换下tab样式
|
|
||||||
var $this = $(this)
|
|
||||||
if (!$this.hasClass('activeClick')) {
|
$('.n-btn-r').each(function (index) {
|
||||||
if ($this.hasClass('bgbtn')) {
|
console.log($(this))
|
||||||
$(".bgbtn").removeClass('activeClick')
|
$(this).removeClass('n-btn-l-act')
|
||||||
} else {
|
})
|
||||||
$(".bgbtntop").removeClass('activeClick')
|
$('.n-btn-l').each(function (index) {
|
||||||
}
|
console.log($(this))
|
||||||
$this.addClass('activeClick')
|
$(this).removeClass('n-btn-l-act')
|
||||||
}
|
})
|
||||||
|
$(this).addClass('n-btn-l-act')
|
||||||
|
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
var mainTabStrip = F(mainTabStripClientID);
|
var mainTabStrip = F(mainTabStripClientID);
|
||||||
|
|
@ -760,7 +767,7 @@
|
||||||
if (bConfirmed) { window.open('login.aspx', '_top'); }
|
if (bConfirmed) { window.open('login.aspx', '_top'); }
|
||||||
}
|
}
|
||||||
// 全屏
|
// 全屏
|
||||||
document.querySelector('.full').onclick = function () {
|
document.querySelector('.ab').onclick = function () {
|
||||||
const element = document.documentElement
|
const element = document.documentElement
|
||||||
if (document.fullscreenElement) {
|
if (document.fullscreenElement) {
|
||||||
// 退出
|
// 退出
|
||||||
|
|
@ -792,23 +799,23 @@
|
||||||
//切换左上角类别
|
//切换左上角类别
|
||||||
function changeHead(type) {
|
function changeHead(type) {
|
||||||
if (type == 0) {
|
if (type == 0) {
|
||||||
$("#div_xmgk").addClass("y_action1");
|
$("#div_xmgk").addClass("t-btn-act");
|
||||||
$("#div_aqsc").removeClass("y_action1");
|
$("#div_aqsc").removeClass("t-btn-act");
|
||||||
$("#div_zlgl").removeClass("y_action1");
|
$("#div_zlgl").removeClass("t-btn-act");
|
||||||
$('[id$="_btn_xmgk"]').click();
|
$('[id$="_btn_xmgk"]').click();
|
||||||
|
|
||||||
|
|
||||||
} else if (type == 1) {
|
} else if (type == 1) {
|
||||||
//
|
//
|
||||||
$("#div_aqsc").addClass("y_action1");
|
$("#div_aqsc").addClass("t-btn-act");
|
||||||
$("#div_xmgk").removeClass("y_action1");
|
$("#div_xmgk").removeClass("t-btn-act");
|
||||||
$("#div_zlgl").removeClass("y_action1");
|
$("#div_zlgl").removeClass("t-btn-act");
|
||||||
$('[id$="_btn_aqsc"]').click();
|
$('[id$="_btn_aqsc"]').click();
|
||||||
} else if (type == 2) {
|
} else if (type == 2) {
|
||||||
//
|
//
|
||||||
$("#div_zlgl").addClass("y_action1");
|
$("#div_zlgl").addClass("t-btn-act");
|
||||||
$("#div_xmgk").removeClass("y_action1");
|
$("#div_xmgk").removeClass("t-btn-act");
|
||||||
$("#div_aqsc").removeClass("y_action1");
|
$("#div_aqsc").removeClass("t-btn-act");
|
||||||
$('[id$="_btn_zlgl"]').click();
|
$('[id$="_btn_zlgl"]').click();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -7,12 +7,10 @@
|
||||||
// </自动生成>
|
// </自动生成>
|
||||||
//------------------------------------------------------------------------------
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
namespace FineUIPro.Web
|
namespace FineUIPro.Web {
|
||||||
{
|
|
||||||
|
|
||||||
|
|
||||||
public partial class index
|
public partial class index {
|
||||||
{
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// form1 控件。
|
/// form1 控件。
|
||||||
|
|
@ -86,6 +84,33 @@ namespace FineUIPro.Web
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button btn_zlgl;
|
protected global::FineUIPro.Button btn_zlgl;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnProject 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.Button btnProject;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnDigData 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.Button btnDigData;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnServer 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.Button btnServer;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// btnHome 控件。
|
/// btnHome 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -131,33 +156,6 @@ namespace FineUIPro.Web
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button btnRetweet;
|
protected global::FineUIPro.Button btnRetweet;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// btnProject 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::FineUIPro.Button btnProject;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// btnDigData 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::FineUIPro.Button btnDigData;
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// btnServer 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::FineUIPro.Button btnServer;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// btnNotice 控件。
|
/// btnNotice 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,13 @@
|
||||||
<link type="text/css" rel="stylesheet" href="~/res/css/default.css" />
|
<link type="text/css" rel="stylesheet" href="~/res/css/default.css" />
|
||||||
<link href="~/res/index/css/index.css" rel="stylesheet" />
|
<link href="~/res/index/css/index.css" rel="stylesheet" />
|
||||||
<link href="~/res/index/css/home.css" rel="stylesheet" />
|
<link href="~/res/index/css/home.css" rel="stylesheet" />
|
||||||
|
<link rel="stylesheet" href="~/res/css/swiper.min.css">
|
||||||
|
<script src="~/res/lib/flex.js"></script>
|
||||||
|
<script src="~/res/lib/jquery.js"></script>
|
||||||
|
<script src="~/res/lib/china.js"></script>
|
||||||
|
<script src="~/res/lib/echarts.min.js"></script>
|
||||||
|
<script src="~/res/lib/swiper.min.js"></script>
|
||||||
|
<link rel="stylesheet" href="~/res/css/company.css">
|
||||||
<style>
|
<style>
|
||||||
.BMap_mask {
|
.BMap_mask {
|
||||||
background-color: red;
|
background-color: red;
|
||||||
|
|
@ -223,72 +230,63 @@
|
||||||
<f:ContentPanel ID="topPanel" CssClass="topregion" RegionPosition="Top" ShowBorder="false" ShowHeader="false" EnableCollapse="true" runat="server">
|
<f:ContentPanel ID="topPanel" CssClass="topregion" RegionPosition="Top" ShowBorder="false" ShowHeader="false" EnableCollapse="true" runat="server">
|
||||||
<%--头部 开始--%>
|
<%--头部 开始--%>
|
||||||
<f:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server">
|
<f:ContentPanel ID="ContentPanel1" CssClass="bodyregion" ShowBorder="false" ShowHeader="false" runat="server">
|
||||||
<div class="y_head ">
|
<div class="header">
|
||||||
<div class="y_logo y_row y_image_default">
|
<div class="nav-left">
|
||||||
<div class="y_navbars y_row">
|
<div class="nav-btn t-btns p-t-btns">
|
||||||
<div>
|
<div class="projectSelect">
|
||||||
<p>
|
|
||||||
<f:DropDownList runat="server" Width="300px" ID="drpProject" OnSelectedIndexChanged="drpProject_SelectedIndexChanged"
|
<f:DropDownList runat="server" Width="250px" ID="drpProject" OnSelectedIndexChanged="drpProject_SelectedIndexChanged"
|
||||||
AutoPostBack="true" EnableEdit="true" CssClass="">
|
AutoPostBack="true" EnableEdit="true" CssClass="">
|
||||||
</f:DropDownList>
|
</f:DropDownList>
|
||||||
</p>
|
|
||||||
</div>
|
</div>
|
||||||
<div class="y_navbar y_action1" onclick="ProjectZJClick();">在建</div>
|
<div class="t-btn t-btn-act" onclick="ProjectZJClick();" style="cursor:pointer">在建</div>
|
||||||
<div class="y_navbar" onclick="ProjectTGClick();">停工</div>
|
<div class="t-btn" onclick="ProjectTGClick();" style="cursor:pointer">停工</div>
|
||||||
<div class="y_navbar" onclick="ProjectJGClick();">竣工</div>
|
<div class="t-btn" onclick="ProjectJGClick();" style="cursor:pointer">竣工</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_title" style="flex: 1.5;">
|
<div class="nav-btn n-btns-l">
|
||||||
中国五环工程有限公司智慧施工管理信息系统(项目级)
|
<div class="n-btn-l p-n-btn-l" onclick="CQMSClick();" style="cursor:pointer">质量管理</div>
|
||||||
<f:Button runat="server" CssClass="bgbtn_head" EnablePostBack="true" OnClick="btnHome_Click"
|
<div class="n-btn-l p-n-btn-l" onclick="HSSEClick();" style="cursor:pointer">安全管理</div>
|
||||||
|
<div class="n-btn-l p-n-btn-l" onclick="JDGLClick();" style="cursor:pointer">进度管理</div>
|
||||||
|
<div class="n-btn-l p-n-btn-l" onclick="HJGLClick();" style="cursor:pointer">焊接管理</div>
|
||||||
|
<div class="n-btn-l p-n-btn-l" onclick="CLGLClick();" style="cursor:pointer">材料管理</div>
|
||||||
|
<div class="n-btn-l p-n-btn-l" onclick="TestRunClick();" style="cursor:pointer">试车管理</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="nav-center">
|
||||||
|
<h1>中国五环工程有限公司智慧施工管理信息系统(项目级)<f:Button runat="server" CssClass="bgbtn_head" EnablePostBack="true" OnClick="btnHome_Click"
|
||||||
EnableDefaultState="true" EnableDefaultCorner="false" ID="Button21">
|
EnableDefaultState="true" EnableDefaultCorner="false" ID="Button21">
|
||||||
</f:Button>
|
</f:Button>
|
||||||
|
</h1>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_setting y_row">
|
<div class="nav-right">
|
||||||
<div class="y_set mine y_image_default" onclick="HelpFunction()" style="cursor: pointer">
|
<div class="btns t-btns t-btn-r">
|
||||||
帮助
|
<div class=" t-btn1 iconfont icon-yonghu" onclick="PersonalFunction()" style="cursor: pointer"><span>个人<f:Button runat="server" CssClass="bgbtntop" IconFont="User" OnClick="btnPersonal_Click" ToolTip="我的" Hidden="true"
|
||||||
<f:Button runat="server" CssClass="bgbtntop" IconFont="Eye" OnClick="btnHelp_Click" ToolTip="帮助" Hidden="true"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHelp" OnClientClick="parent.removeActiveTab();">
|
|
||||||
</f:Button>
|
|
||||||
</div>
|
|
||||||
<div class="y_set mine y_image_default" onclick="PersonalFunction()" style="cursor: pointer">
|
|
||||||
个人
|
|
||||||
<f:Button runat="server" CssClass="bgbtntop" IconFont="User" OnClick="btnPersonal_Click" ToolTip="我的" Hidden="true"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPersonal" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnPersonal" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button></span></div>
|
||||||
</div>
|
<div class="t-btn1 iconfont icon-shezhi" onclick="btnSysSetFunction()" style="cursor: pointer"><span>设置<f:Button runat="server" CssClass="bgbtntop" IconFont="Gear" OnClick="btnProjectSet_Click" ToolTip="项目设置" Hidden="true"
|
||||||
<div class="y_set y_image_default set" onclick="btnSysSetFunction()" style="cursor: pointer">
|
|
||||||
设置
|
|
||||||
<f:Button runat="server" CssClass="bgbtntop" IconFont="Gear" OnClick="btnProjectSet_Click" ToolTip="项目设置" Hidden="true"
|
|
||||||
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnProjectSet" OnClientClick="parent.removeActiveTab();">
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnProjectSet" OnClientClick="parent.removeActiveTab();">
|
||||||
</f:Button>
|
</f:Button></span></div>
|
||||||
</div>
|
<div class="t-btn1 iconfont icon-bangzhu" onclick="HelpFunction()" style="cursor: pointer"><span>帮助<f:Button runat="server" CssClass="bgbtntop" IconFont="Eye" OnClick="btnHelp_Click" ToolTip="帮助" Hidden="true"
|
||||||
<%-- <div class="y_set y_image_default help">帮助</div>--%>
|
EnablePostBack="true" EnableDefaultState="true" EnableDefaultCorner="false" ID="btnHelp" OnClientClick="parent.removeActiveTab();">
|
||||||
<div class="y_set y_image_default exit" onclick="SignOutFunction()" style="cursor: pointer">
|
</f:Button></span></div>
|
||||||
退出
|
<div class="t-btn1 iconfont icon-tuichu" onclick="SignOutFunction()" style="cursor: pointer"><span>退出<f:Button runat="server" CssClass="bgbtntop" Text="退出" ToolTip="退出" IconFont="PowerOff" Hidden="true"
|
||||||
<f:Button runat="server" CssClass="bgbtntop" Text="退出" ToolTip="退出" IconFont="PowerOff" Hidden="true"
|
|
||||||
EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18">
|
EnablePostBack="false" EnableDefaultState="true" EnableDefaultCorner="false" ID="Button18">
|
||||||
<Listeners>
|
<Listeners>
|
||||||
<f:Listener Event="click" Handler="onToolSignOutClick" />
|
<f:Listener Event="click" Handler="onToolSignOutClick" />
|
||||||
</Listeners>
|
</Listeners>
|
||||||
</f:Button>
|
</f:Button></span></div>
|
||||||
|
<div class="t-btn1 iconfont icon-quanping_o ab" style="cursor:pointer"><span>全屏</span></div>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_set y_image_default full">全屏</div>
|
<div class="nav-btn n-btns-r">
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="TransferClick();" style="cursor:pointer">移交管理</div>
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="PGJSXClick();" style="cursor:pointer">关键事项</div>
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="DigitalSiteClick();" style="cursor:pointer">视频监控</div>
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="PDigDataClick();" style="cursor:pointer">现场考勤</div>
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="OpinionClick();" style="cursor:pointer">意见收集</div>
|
||||||
|
<div class="n-btn-r c-n-btn-r" onclick="DocClick();" style="cursor:pointer">协调与沟通</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="y_navs y_row">
|
|
||||||
<div class="y_nav y_image_default" onclick="CQMSClick();">质量管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="HSSEClick();">安全管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="JDGLClick();">进度管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="HJGLClick();">焊接管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="CLGLClick();">材料管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="TestRunClick();">试车管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="TransferClick();">移交管理</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="PGJSXClick();">关键事项</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="DigitalSiteClick();">视频监控</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="PDigDataClick();">现场考勤</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="OpinionClick();">意见收集</div>
|
|
||||||
<div class="y_nav y_image_default" onclick="DocClick();">协调与沟通</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</f:ContentPanel>
|
</f:ContentPanel>
|
||||||
<%--头部 结束--%>
|
<%--头部 结束--%>
|
||||||
|
|
@ -877,6 +875,35 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
F.ready(function () {
|
F.ready(function () {
|
||||||
|
|
||||||
|
$(".nav-btn>div").on("click", function (e) {
|
||||||
|
if ($(e.target).hasClass("n-btn-r") || $(e.target).hasClass("n-btn-l")) {
|
||||||
|
$(".nav-btn>div").removeClass("n-btn-r-act")
|
||||||
|
$(".nav-btn>div").removeClass("n-btn-l-act")
|
||||||
|
if ($(e.target).hasClass("n-btn-r")) {
|
||||||
|
$(e.target).addClass("n-btn-r-act")
|
||||||
|
} else if ($(e.target).hasClass("n-btn-l")) {
|
||||||
|
$(e.target).addClass("n-btn-l-act")
|
||||||
|
}
|
||||||
|
} else if ($(e.target).hasClass("t-btn")) {
|
||||||
|
$(".nav-btn>div").removeClass("t-btn-act")
|
||||||
|
$(e.target).addClass("t-btn-act")
|
||||||
|
}
|
||||||
|
// 获取跳转属性
|
||||||
|
console.log($(e.target).attr("url"))
|
||||||
|
|
||||||
|
})
|
||||||
|
|
||||||
|
$('.btns>div').on("click", function (e) {
|
||||||
|
console.log($(e.target).attr("type"))
|
||||||
|
})
|
||||||
|
|
||||||
|
$('.cl-btn').on("click", function (e) {
|
||||||
|
$('.cl-btn').removeClass("cl-btn-act")
|
||||||
|
$(e.target).addClass("cl-btn-act")
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
$(".y_row div").click(function () {
|
$(".y_row div").click(function () {
|
||||||
var $item = $('.f-tabstrip-header')
|
var $item = $('.f-tabstrip-header')
|
||||||
$item.attr('style', ";display:block !important;")
|
$item.attr('style', ";display:block !important;")
|
||||||
|
|
@ -961,7 +988,7 @@
|
||||||
if (bConfirmed) { window.open('login.aspx', '_top'); }
|
if (bConfirmed) { window.open('login.aspx', '_top'); }
|
||||||
}
|
}
|
||||||
// 全屏
|
// 全屏
|
||||||
document.querySelector('.full').onclick = function () {
|
document.querySelector('.ab').onclick = function () {
|
||||||
const element = document.documentElement
|
const element = document.documentElement
|
||||||
if (document.fullscreenElement) {
|
if (document.fullscreenElement) {
|
||||||
// 退出
|
// 退出
|
||||||
|
|
|
||||||
|
|
@ -75,15 +75,6 @@ namespace FineUIPro.Web {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button Button21;
|
protected global::FineUIPro.Button Button21;
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// btnHelp 控件。
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// 自动生成的字段。
|
|
||||||
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
|
||||||
/// </remarks>
|
|
||||||
protected global::FineUIPro.Button btnHelp;
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// btnPersonal 控件。
|
/// btnPersonal 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -102,6 +93,15 @@ namespace FineUIPro.Web {
|
||||||
/// </remarks>
|
/// </remarks>
|
||||||
protected global::FineUIPro.Button btnProjectSet;
|
protected global::FineUIPro.Button btnProjectSet;
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// btnHelp 控件。
|
||||||
|
/// </summary>
|
||||||
|
/// <remarks>
|
||||||
|
/// 自动生成的字段。
|
||||||
|
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
|
||||||
|
/// </remarks>
|
||||||
|
protected global::FineUIPro.Button btnHelp;
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Button18 控件。
|
/// Button18 控件。
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
After Width: | Height: | Size: 38 KiB |
|
After Width: | Height: | Size: 3.6 KiB |
|
After Width: | Height: | Size: 3.1 KiB |
|
After Width: | Height: | Size: 4.3 KiB |
|
After Width: | Height: | Size: 3.3 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 24 KiB |
|
After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 1.6 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 4.6 KiB |
|
After Width: | Height: | Size: 4.4 KiB |
|
After Width: | Height: | Size: 3.9 KiB |
|
After Width: | Height: | Size: 66 KiB |
|
After Width: | Height: | Size: 5.7 KiB |
|
After Width: | Height: | Size: 4.8 KiB |
|
After Width: | Height: | Size: 458 KiB |
|
After Width: | Height: | Size: 3.2 KiB |
|
After Width: | Height: | Size: 2.7 KiB |
|
After Width: | Height: | Size: 2.8 KiB |
|
After Width: | Height: | Size: 3.5 KiB |
|
After Width: | Height: | Size: 725 KiB |
|
After Width: | Height: | Size: 9.4 KiB |
|
|
@ -0,0 +1,43 @@
|
||||||
|
(function flexible(window, document) {
|
||||||
|
var docEl = document.documentElement
|
||||||
|
var dpr = window.devicePixelRatio || 1
|
||||||
|
|
||||||
|
// adjust body font size
|
||||||
|
function setBodyFontSize() {
|
||||||
|
if (document.body) {
|
||||||
|
document.body.style.fontSize = (16 * dpr) + 'px'
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
document.addEventListener('DOMContentLoaded', setBodyFontSize)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setBodyFontSize();
|
||||||
|
|
||||||
|
function setRemUnit() {
|
||||||
|
var rem = docEl.clientWidth / 24
|
||||||
|
docEl.style.fontSize = rem + 'px'
|
||||||
|
}
|
||||||
|
|
||||||
|
setRemUnit()
|
||||||
|
|
||||||
|
// reset rem unit on page resize
|
||||||
|
window.addEventListener('resize', setRemUnit)
|
||||||
|
window.addEventListener('pageshow', function (e) {
|
||||||
|
if (e.persisted) {
|
||||||
|
setRemUnit()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// detect 0.5px supports
|
||||||
|
if (dpr >= 2) {
|
||||||
|
var fakeBody = document.createElement('body')
|
||||||
|
var testElement = document.createElement('div')
|
||||||
|
testElement.style.border = '.5px solid transparent'
|
||||||
|
fakeBody.appendChild(testElement)
|
||||||
|
docEl.appendChild(fakeBody)
|
||||||
|
if (testElement.offsetHeight === 1) {
|
||||||
|
docEl.classList.add('hairlines')
|
||||||
|
}
|
||||||
|
docEl.removeChild(fakeBody)
|
||||||
|
}
|
||||||
|
}(window, document))
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
|
<LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
|
||||||
<UseIISExpress>true</UseIISExpress>
|
<UseIISExpress>true</UseIISExpress>
|
||||||
<Use64BitIISExpress />
|
<Use64BitIISExpress />
|
||||||
<IISExpressSSLPort />
|
<IISExpressSSLPort />
|
||||||
|
|
|
||||||