using Aspose.Words; using BLL; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; using System.IO; using System.Linq; namespace FineUIPro.Web.ZHGL.DataSync { public partial class DataStatistics : PageBase { #region 加载 /// /// 加载页面 /// /// /// protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { // 绑定表格 this.BindGrid(); OutputSummaryData(); } } #endregion #region 绑定数据Grid1 /// /// 绑定数据Grid1 /// private void BindGrid() { string strSql = @"select * from View_DataStatistics "; tb = SQLHelper.GetDataTableRunText(strSql, null); Grid1.RecordCount = tb.Rows.Count; var tab = GetFilteredTable(Grid1.FilteredData, tb); var table = GetPagedDataTable(Grid1, tab); Grid1.DataSource = table; Grid1.DataBind(); } #endregion private DataTable tb = null; private void OutputSummaryData() { if (tb != null) { int CommissionerPersonNum = 0; int FullTimePersonNum = 0; int SafetySupervisionPersonNum = 0; int InjectionSafetyEngineerPersonNum = 0; int ACertificatePersonNum = 0; int BCertificatePersonNum = 0; int CCertificatePersonNum = 0; int TotalWorkingHours = 0; int LostWorkingHours = 0; int SafeWorkingHours = 0; int SafeTrainNum = 0; int SpecialTrainNum = 0; int SpecialOperationTrainNum = 0; int ProjectSafetyLeadingGroupMeetingNum = 0; int ProjectSafetyMeetingNum = 0; int ProjectLeadShiftCheckNum = 0; int ProjectSpecialCheckNum = 0; int ProjectMajorCheckNum = 0; int NearMissNum = 0; int RecordableEventNum = 0; int GeneralAccidentNum = 0; int MajorAccidentNum = 0; int SeriousAccidentNum = 0; int SpecialSeriousAccidentNum = 0; int ProjectComprehensivePlanNum = 0; int ProjectSpecialPlanNum = 0; int ProjectOnSiteDisposalPlanNum = 0; int ProjectDrillNum = 0; int CostUse = 0; int UseEquipmentNum = 0; int SpecialEquipmentNum = 0; int LicensesNum = 0; int LicensesCloseNum = 0; int GeneralClosedNum = 0; int GeneralNotClosedNum = 0; string GeneralRate = "/"; int MajorClosedNum = 0; int MajorNotClosedNum = 0; string MajorRate = "/"; int LowRiskNum = 0; int GeneralRiskNum = 0; int MediumRiskNum = 0; int HighRiskNum = 0; int CompletedNum = 0; int TrainPersonNum = 0; int ConstructionNum = 0; int FinishedNum = 0; int SuperCompletedNum = 0; int SuperTrainPersonNum = 0; int SuperConstructionNum = 0; int SuperFinishedNum = 0; int QTrainPersonNum = 0; int TechnicalDisclosePersonNum = 0; int UseNum = 0; int OKNum = 0; int ProjectPersonNum = 0; int ProblemNum = 0; int ProblemCompletedNum = 0; int ProblemNotCompletedNum = 0; string ProblemRate = "/"; int ANum = 0; int BNum = 0; int CNum = 0; int KeyProcessNum = 0; int KeyProcessOkNum = 0; string KeyProcessRate = "/"; int SpecialProcessNum = 0; int SpecialProcessOkNum = 0; string SpecialProcessRate = "/"; int ConcealedWorksNum = 0; int ConcealedWorksOkNum = 0; string ConcealedWorksRate = "/"; int UnitProjectOnesNum = 0; int UnitProjectOnesOKNum = 0; string UnitProjectOnesRate = "/"; int MaterialInRecheckNum = 0; int MaterialInRecheckOKNum = 0; string MaterialInRecheckRate = "/"; int SingleProjectNum = 0; int UnitProjectNum = 0; int SubProjectNum = 0; int SubdivisionalWorksNum = 0; int InspectionLotNum = 0; int WelderNum = 0; int TotalDineNum = 0; int CompleteDineNum = 0; int TotalFilmNum = 0; int OKFilmNum = 0; foreach (DataRow row in tb.Rows) { CommissionerPersonNum += Funs.GetNewIntOrZero(row["CommissionerPersonNum"].ToString()); FullTimePersonNum += Funs.GetNewIntOrZero(row["FullTimePersonNum"].ToString()); SafetySupervisionPersonNum += Funs.GetNewIntOrZero(row["SafetySupervisionPersonNum"].ToString()); InjectionSafetyEngineerPersonNum += Funs.GetNewIntOrZero(row["InjectionSafetyEngineerPersonNum"].ToString()); ACertificatePersonNum += Funs.GetNewIntOrZero(row["ACertificatePersonNum"].ToString()); BCertificatePersonNum += Funs.GetNewIntOrZero(row["BCertificatePersonNum"].ToString()); CCertificatePersonNum += Funs.GetNewIntOrZero(row["CCertificatePersonNum"].ToString()); TotalWorkingHours += Funs.GetNewIntOrZero(row["TotalWorkingHours"].ToString()); LostWorkingHours += Funs.GetNewIntOrZero(row["LostWorkingHours"].ToString()); SafeWorkingHours += Funs.GetNewIntOrZero(row["SafeWorkingHours"].ToString()); SafeTrainNum += Funs.GetNewIntOrZero(row["SafeTrainNum"].ToString()); SpecialTrainNum += Funs.GetNewIntOrZero(row["SpecialTrainNum"].ToString()); SpecialOperationTrainNum += Funs.GetNewIntOrZero(row["SpecialOperationTrainNum"].ToString()); ProjectSafetyLeadingGroupMeetingNum += Funs.GetNewIntOrZero(row["ProjectSafetyLeadingGroupMeetingNum"].ToString()); ProjectSafetyMeetingNum += Funs.GetNewIntOrZero(row["ProjectSafetyMeetingNum"].ToString()); ProjectLeadShiftCheckNum += Funs.GetNewIntOrZero(row["ProjectLeadShiftCheckNum"].ToString()); ProjectSpecialCheckNum += Funs.GetNewIntOrZero(row["ProjectSpecialCheckNum"].ToString()); ProjectMajorCheckNum += Funs.GetNewIntOrZero(row["ProjectMajorCheckNum"].ToString()); NearMissNum += Funs.GetNewIntOrZero(row["NearMissNum"].ToString()); RecordableEventNum += Funs.GetNewIntOrZero(row["RecordableEventNum"].ToString()); GeneralAccidentNum += Funs.GetNewIntOrZero(row["GeneralAccidentNum"].ToString()); MajorAccidentNum += Funs.GetNewIntOrZero(row["MajorAccidentNum"].ToString()); SeriousAccidentNum += Funs.GetNewIntOrZero(row["SeriousAccidentNum"].ToString()); SpecialSeriousAccidentNum += Funs.GetNewIntOrZero(row["SpecialSeriousAccidentNum"].ToString()); ProjectComprehensivePlanNum += Funs.GetNewIntOrZero(row["ProjectComprehensivePlanNum"].ToString()); ProjectSpecialPlanNum += Funs.GetNewIntOrZero(row["ProjectSpecialPlanNum"].ToString()); ProjectOnSiteDisposalPlanNum += Funs.GetNewIntOrZero(row["ProjectOnSiteDisposalPlanNum"].ToString()); ProjectDrillNum += Funs.GetNewIntOrZero(row["ProjectDrillNum"].ToString()); CostUse += Funs.GetNewIntOrZero(row["CostUse"].ToString()); UseEquipmentNum += Funs.GetNewIntOrZero(row["UseEquipmentNum"].ToString()); SpecialEquipmentNum += Funs.GetNewIntOrZero(row["SpecialEquipmentNum"].ToString()); LicensesNum += Funs.GetNewIntOrZero(row["LicensesNum"].ToString()); LicensesCloseNum += Funs.GetNewIntOrZero(row["LicensesCloseNum"].ToString()); GeneralClosedNum += Funs.GetNewIntOrZero(row["GeneralClosedNum"].ToString()); GeneralNotClosedNum += Funs.GetNewIntOrZero(row["GeneralNotClosedNum"].ToString()); MajorClosedNum += Funs.GetNewIntOrZero(row["MajorClosedNum"].ToString()); MajorNotClosedNum += Funs.GetNewIntOrZero(row["MajorNotClosedNum"].ToString()); LowRiskNum += Funs.GetNewIntOrZero(row["LowRiskNum"].ToString()); GeneralRiskNum += Funs.GetNewIntOrZero(row["GeneralRiskNum"].ToString()); MediumRiskNum += Funs.GetNewIntOrZero(row["MediumRiskNum"].ToString()); HighRiskNum += Funs.GetNewIntOrZero(row["HighRiskNum"].ToString()); CompletedNum += Funs.GetNewIntOrZero(row["CompletedNum"].ToString()); TrainPersonNum += Funs.GetNewIntOrZero(row["TrainPersonNum"].ToString()); ConstructionNum += Funs.GetNewIntOrZero(row["ConstructionNum"].ToString()); FinishedNum += Funs.GetNewIntOrZero(row["FinishedNum"].ToString()); SuperCompletedNum += Funs.GetNewIntOrZero(row["SuperCompletedNum"].ToString()); SuperTrainPersonNum += Funs.GetNewIntOrZero(row["SuperTrainPersonNum"].ToString()); SuperConstructionNum += Funs.GetNewIntOrZero(row["SuperConstructionNum"].ToString()); SuperFinishedNum += Funs.GetNewIntOrZero(row["SuperFinishedNum"].ToString()); QTrainPersonNum += Funs.GetNewIntOrZero(row["QTrainPersonNum"].ToString()); TechnicalDisclosePersonNum += Funs.GetNewIntOrZero(row["TechnicalDisclosePersonNum"].ToString()); UseNum += Funs.GetNewIntOrZero(row["UseNum"].ToString()); OKNum += Funs.GetNewIntOrZero(row["OKNum"].ToString()); ProjectPersonNum += Funs.GetNewIntOrZero(row["ProjectPersonNum"].ToString()); ProblemNum += Funs.GetNewIntOrZero(row["ProblemNum"].ToString()); ProblemCompletedNum += Funs.GetNewIntOrZero(row["ProblemCompletedNum"].ToString()); ProblemNotCompletedNum += Funs.GetNewIntOrZero(row["ProblemNotCompletedNum"].ToString()); ANum += Funs.GetNewIntOrZero(row["ANum"].ToString()); BNum += Funs.GetNewIntOrZero(row["BNum"].ToString()); CNum += Funs.GetNewIntOrZero(row["CNum"].ToString()); KeyProcessNum += Funs.GetNewIntOrZero(row["KeyProcessNum"].ToString()); KeyProcessOkNum += Funs.GetNewIntOrZero(row["KeyProcessOkNum"].ToString()); SpecialProcessNum += Funs.GetNewIntOrZero(row["SpecialProcessNum"].ToString()); SpecialProcessOkNum += Funs.GetNewIntOrZero(row["SpecialProcessOkNum"].ToString()); ConcealedWorksNum += Funs.GetNewIntOrZero(row["ConcealedWorksNum"].ToString()); ConcealedWorksOkNum += Funs.GetNewIntOrZero(row["ConcealedWorksOkNum"].ToString()); UnitProjectOnesNum += Funs.GetNewIntOrZero(row["UnitProjectOnesNum"].ToString()); UnitProjectOnesOKNum += Funs.GetNewIntOrZero(row["UnitProjectOnesOKNum"].ToString()); MaterialInRecheckNum += Funs.GetNewIntOrZero(row["MaterialInRecheckNum"].ToString()); MaterialInRecheckOKNum += Funs.GetNewIntOrZero(row["MaterialInRecheckOKNum"].ToString()); SingleProjectNum += Funs.GetNewIntOrZero(row["SingleProjectNum"].ToString()); UnitProjectNum += Funs.GetNewIntOrZero(row["UnitProjectNum"].ToString()); SubProjectNum += Funs.GetNewIntOrZero(row["SubProjectNum"].ToString()); SubdivisionalWorksNum += Funs.GetNewIntOrZero(row["SubdivisionalWorksNum"].ToString()); InspectionLotNum += Funs.GetNewIntOrZero(row["InspectionLotNum"].ToString()); WelderNum += Funs.GetNewIntOrZero(row["WelderNum"].ToString()); TotalDineNum += Funs.GetNewIntOrZero(row["TotalDineNum"].ToString()); CompleteDineNum += Funs.GetNewIntOrZero(row["CompleteDineNum"].ToString()); TotalFilmNum += Funs.GetNewIntOrZero(row["TotalFilmNum"].ToString()); OKFilmNum += Funs.GetNewIntOrZero(row["OKFilmNum"].ToString()); } if ((GeneralClosedNum + GeneralNotClosedNum) > 0) { GeneralRate = decimal.Round(decimal.Parse((Convert.ToDecimal(GeneralClosedNum) / (GeneralClosedNum + GeneralNotClosedNum) * 100).ToString()), 2).ToString() + "%"; } if ((MajorClosedNum + MajorNotClosedNum) > 0) { MajorRate = decimal.Round(decimal.Parse((Convert.ToDecimal(MajorClosedNum) / (MajorClosedNum + MajorNotClosedNum) * 100).ToString()), 2).ToString() + "%"; } if (ProblemNum > 0) { ProblemRate = decimal.Round(decimal.Parse((Convert.ToDecimal(ProblemCompletedNum) / ProblemNum * 100).ToString()), 2).ToString() + "%"; } if (KeyProcessNum > 0) { KeyProcessRate = decimal.Round(decimal.Parse((Convert.ToDecimal(KeyProcessOkNum) / KeyProcessNum * 100).ToString()), 2).ToString() + "%"; } if (SpecialProcessNum > 0) { SpecialProcessRate = decimal.Round(decimal.Parse((Convert.ToDecimal(SpecialProcessOkNum) / SpecialProcessNum * 100).ToString()), 2).ToString() + "%"; } if (ConcealedWorksNum > 0) { ConcealedWorksRate = decimal.Round(decimal.Parse((Convert.ToDecimal(ConcealedWorksOkNum) / ConcealedWorksNum * 100).ToString()), 2).ToString() + "%"; } if (UnitProjectOnesNum > 0) { UnitProjectOnesRate = decimal.Round(decimal.Parse((Convert.ToDecimal(UnitProjectOnesOKNum) / UnitProjectOnesNum * 100).ToString()), 2).ToString() + "%"; } if (MaterialInRecheckNum > 0) { MaterialInRecheckRate = decimal.Round(decimal.Parse((Convert.ToDecimal(MaterialInRecheckOKNum) / MaterialInRecheckNum * 100).ToString()), 2).ToString() + "%"; } JObject summary = new JObject { { "ShortName", "合计" }, { "CommissionerPersonNum", CommissionerPersonNum }, { "FullTimePersonNum", FullTimePersonNum }, { "SafetySupervisionPersonNum", SafetySupervisionPersonNum }, { "InjectionSafetyEngineerPersonNum", InjectionSafetyEngineerPersonNum }, { "ACertificatePersonNum", ACertificatePersonNum }, { "BCertificatePersonNum", BCertificatePersonNum }, { "CCertificatePersonNum", CCertificatePersonNum }, { "TotalWorkingHours", TotalWorkingHours }, { "LostWorkingHours", LostWorkingHours }, { "SafeWorkingHours", SafeWorkingHours }, { "SafeTrainNum", SafeTrainNum }, { "SpecialTrainNum", SpecialTrainNum }, { "SpecialOperationTrainNum", SpecialOperationTrainNum }, { "ProjectSafetyLeadingGroupMeetingNum", ProjectSafetyLeadingGroupMeetingNum }, { "ProjectSafetyMeetingNum", ProjectSafetyMeetingNum }, { "ProjectLeadShiftCheckNum", ProjectLeadShiftCheckNum }, { "ProjectSpecialCheckNum", ProjectSpecialCheckNum }, { "ProjectMajorCheckNum", ProjectMajorCheckNum }, { "NearMissNum", NearMissNum }, { "RecordableEventNum", RecordableEventNum }, { "GeneralAccidentNum", GeneralAccidentNum }, { "MajorAccidentNum", MajorAccidentNum }, { "SeriousAccidentNum", SeriousAccidentNum }, { "SpecialSeriousAccidentNum", SpecialSeriousAccidentNum }, { "ProjectComprehensivePlanNum", ProjectComprehensivePlanNum }, { "ProjectSpecialPlanNum", ProjectSpecialPlanNum }, { "ProjectOnSiteDisposalPlanNum", ProjectOnSiteDisposalPlanNum }, { "ProjectDrillNum", ProjectDrillNum }, { "CostUse", CostUse }, { "UseEquipmentNum", UseEquipmentNum }, { "SpecialEquipmentNum", SpecialEquipmentNum }, { "LicensesNum", LicensesNum }, { "LicensesCloseNum", LicensesCloseNum }, { "GeneralClosedNum", GeneralClosedNum }, { "GeneralNotClosedNum", GeneralNotClosedNum }, { "GeneralRate", GeneralRate }, { "MajorClosedNum", MajorClosedNum }, { "MajorNotClosedNum", MajorNotClosedNum }, { "MajorRate", MajorRate }, { "LowRiskNum", LowRiskNum }, { "GeneralRiskNum", GeneralRiskNum }, { "MediumRiskNum", MediumRiskNum }, { "HighRiskNum", HighRiskNum }, { "CompletedNum", CompletedNum }, { "TrainPersonNum", TrainPersonNum }, { "ConstructionNum", ConstructionNum }, { "FinishedNum", FinishedNum }, { "SuperCompletedNum", SuperCompletedNum }, { "SuperTrainPersonNum", SuperTrainPersonNum }, { "SuperConstructionNum", SuperConstructionNum }, { "SuperFinishedNum", SuperFinishedNum }, { "QTrainPersonNum", QTrainPersonNum }, { "TechnicalDisclosePersonNum", TechnicalDisclosePersonNum }, { "UseNum", UseNum }, { "OKNum", OKNum }, { "ProjectPersonNum", ProjectPersonNum }, { "ProblemNum", ProblemNum }, { "ProblemCompletedNum", ProblemCompletedNum }, { "ProblemNotCompletedNum", ProblemNotCompletedNum }, { "ProblemRate", ProblemRate }, { "ANum", ANum }, { "BNum", BNum }, { "CNum", CNum }, { "KeyProcessNum", KeyProcessNum }, { "KeyProcessOkNum", KeyProcessOkNum }, { "KeyProcessRate", KeyProcessRate }, { "SpecialProcessNum", SpecialProcessNum }, { "SpecialProcessOkNum", SpecialProcessOkNum }, { "SpecialProcessRate", SpecialProcessRate }, { "ConcealedWorksNum", ConcealedWorksNum }, { "ConcealedWorksOkNum", ConcealedWorksOkNum }, { "ConcealedWorksRate", ConcealedWorksRate }, { "UnitProjectOnesNum", UnitProjectOnesNum }, { "UnitProjectOnesOKNum", UnitProjectOnesOKNum }, { "UnitProjectOnesRate", UnitProjectOnesRate }, { "MaterialInRecheckNum", MaterialInRecheckNum }, { "MaterialInRecheckOKNum", MaterialInRecheckOKNum }, { "MaterialInRecheckRate", MaterialInRecheckRate }, { "SingleProjectNum", SingleProjectNum }, { "UnitProjectNum", UnitProjectNum }, { "SubProjectNum", SubProjectNum }, { "SubdivisionalWorksNum", SubdivisionalWorksNum }, { "InspectionLotNum", InspectionLotNum }, { "WelderNum", WelderNum }, { "TotalDineNum", TotalDineNum }, { "CompleteDineNum", CompleteDineNum }, { "TotalFilmNum", TotalFilmNum }, { "OKFilmNum", OKFilmNum } }; Grid1.SummaryData = summary; } } } }