public void riskPoF(int ID) { RW_FULL_POF_BUS bus = new RW_FULL_POF_BUS(); RW_FULL_POF obj = bus.getData(ID); cbThinningType.Text = obj.ThinningType; textEdit1.Text = obj.GFFTotal.ToString(); textEdit2.Text = obj.FMS.ToString(); txt0Thinning.Text = obj.ThinningAP1.ToString(); txt36Thinning.Text = obj.ThinningAP2.ToString(); txt72Thinning.Text = obj.ThinningAP3.ToString(); txt0StressCorrosion.Text = obj.SCCAP1.ToString(); txt36StressCorrosion.Text = obj.SCCAP2.ToString(); txt72StressCorrosion.Text = obj.SCCAP3.ToString(); txt0External.Text = obj.ExternalAP1.ToString(); txt36External.Text = obj.ExternalAP2.ToString(); txt72External.Text = obj.ExternalAP3.ToString(); txt0HighTemperature.Text = obj.HTHA_AP1.ToString(); txt36HighTemperature.Text = obj.HTHA_AP2.ToString(); txt72HighTemperature.Text = obj.HTHA_AP3.ToString(); txt0BrittleFracture.Text = obj.BrittleAP1.ToString(); txt36BrittleFracture.Text = obj.BrittleAP2.ToString(); txt72BrittleFracture.Text = obj.BrittleAP3.ToString(); txt0Piping.Text = obj.FatigueAP1.ToString(); txt36Piping.Text = obj.FatigueAP2.ToString(); txt72Piping.Text = obj.FatigueAP3.ToString(); txt0Other.Text = obj.SemiAP1.ToString(); txt32Other.Text = obj.SemiAP2.ToString(); txt72Other.Text = obj.SemiAP3.ToString(); txt0TotalGeneralThinning.Text = obj.ThinningGeneralAP1.ToString(); txt36TotalGeneralThinning.Text = obj.ThinningGeneralAP2.ToString(); txt72TotalGeneralThinning.Text = obj.ThinningGeneralAP3.ToString(); txt0TotalLocalThinning.Text = obj.ThinningLocalAP1.ToString(); txt36TotalLocalThinning.Text = obj.ThinningLocalAP2.ToString(); txt72TotalLocalThinning.Text = obj.ThinningLocalAP3.ToString(); txt0FinalTotalDamage.Text = obj.TotalDFAP1.ToString(); txt36FinalTotalDamage.Text = obj.TotalDFAP2.ToString(); txt72FinalTotalDamage.Text = obj.TotalDFAP3.ToString(); txt0PoF.Text = obj.PoFAP1.ToString(); txt36PoF.Text = obj.PoFAP2.ToString(); txt72PoF.Text = obj.PoFAP3.ToString(); txt0PoFCategory.Text = obj.PoFAP1Category; txt36PoFCategory.Text = obj.PoFAP2Category; txt72PoFCategory.Text = obj.PoFAP3Category; }
private void DrawRiskMatrix(int ID) { RW_FULL_POF_BUS busPoF = new RW_FULL_POF_BUS(); float[] DF = busPoF.getDF(ID); RW_FULL_FCOF_BUS busCoF = new RW_FULL_FCOF_BUS(); float CoF = busCoF.getFCoFValue(ID); int width = picRiskSummary.Width - 16; int height = picRiskSummary.Height - 16; int x = width / 5; int y = height / 5; picRiskSummary.Image = new Bitmap(width, height); g = Graphics.FromImage(this.picRiskSummary.Image); //tô màu SolidBrush red = new SolidBrush(Color.Red); Rectangle recRed1 = new Rectangle(x * 3 + 2, 8, x * 2 - 4, y); Rectangle recRed2 = new Rectangle(x * 4, y, x - 2, y * 2 + 2); g.FillRectangle(red, recRed1); g.FillRectangle(red, recRed2); SolidBrush orange = new SolidBrush(Color.Orange); Rectangle recOrange1 = new Rectangle(8, 8, x * 3 - 6, y - 2); Rectangle recOrange2 = new Rectangle(x * 2 + 2, y + 6, x * 2 - 2, y - 2); Rectangle recOrange3 = new Rectangle(x * 3, y * 2, x, y + 2); Rectangle recOrange4 = new Rectangle(x * 4, y * 3 + 2, x - 2, y * 2 - 4); g.FillRectangle(orange, recOrange1); g.FillRectangle(orange, recOrange2); g.FillRectangle(orange, recOrange3); g.FillRectangle(orange, recOrange4); SolidBrush green = new SolidBrush(Color.Green); Rectangle recGreen = new Rectangle(8, y * 2 + 5, x * 2 - 5, y * 3 - 8); g.FillRectangle(green, recGreen); SolidBrush yellow = new SolidBrush(Color.Yellow); Rectangle recYellow1 = new Rectangle(8, y + 6, x * 2 - 4, y - 2); Rectangle recYellow2 = new Rectangle(x * 2 + 4, y * 2 + 4, x - 2, y * 3 - 6); Rectangle recYellow3 = new Rectangle(x * 3, y * 3 + 2, x, y * 2 - 4); g.FillRectangle(yellow, recYellow1); g.FillRectangle(yellow, recYellow2); g.FillRectangle(yellow, recYellow3); Pen gridPen = new Pen(Color.Black, 2); //vẽ cột đứng for (int i = 8; i < width; i += x - 2) { g.DrawLine(gridPen, i, 8, i, height - 2); } //vẽ dòng ngang for (int i = 8; i < height; i += y - 2) { g.DrawLine(gridPen, 8, i, width - 2, i); } float[] coordinatesPoF = { 0, 0, 0 }; float coordinatesCoF = 0; //float[] DF = { 1, 500, 5000 }; for (int i = 0; i < 3; i++) { if (DF[i] <= 2) { coordinatesPoF[i] = 4 * y + (y - DF[i] * y / 2) - 8; } else if (DF[i] <= 20) { coordinatesPoF[i] = 3 * y + (y - y * DF[i] / 20) - 8; } else if (DF[i] <= 100) { coordinatesPoF[i] = 2 * y + (y - y * DF[i] / 100) - 8; } else if (DF[i] <= 1000) { coordinatesPoF[i] = y + (y - y * DF[i] / 1000) - 8; } else { int df = (int)DF[i]; string a = df.ToString(); coordinatesPoF[i] = y - y * DF[i] / (float)Math.Pow(10, a.Length); } } if (CoF <= 10000) { coordinatesCoF = x * CoF / 10000; } else if (CoF <= 100000) { float FC = CoF / 10; coordinatesCoF = x + FC * x / 10000; } else if (CoF <= 1000000) { float FC = CoF / 100; coordinatesCoF = 2 * x + FC * x / 10000; } else if (CoF <= 10000000) { float FC = CoF / 1000; coordinatesCoF = 3 * x + FC * x / 10000; } else { float FC = CoF / 10000; coordinatesCoF = 4 * x + FC * x / 10000 - 16; } Image[] image = { Resource1.Triangle_icon, Resource1.Square_icon, Resource1.Circle_icon }; for (int i = 0; i < 3; i++) { g.DrawImage(image[i], coordinatesCoF, coordinatesPoF[i]); } }
public List <RiskSummary> getData() { RW_ASSESSMENT_BUS assBus = new RW_ASSESSMENT_BUS(); List <int> allIDAssessment = assBus.getAllID(); List <RiskSummary> dataRisk = new List <RiskSummary>(); for (int i = 0; i < allIDAssessment.Count; i++) { RiskSummary risk = new RiskSummary(); RW_FULL_POF_BUS busPoF = new RW_FULL_POF_BUS(); RW_FULL_POF fullPoF = busPoF.getData(allIDAssessment[i]); //RW_CA_LEVEL_1_BUS busCA = new RW_CA_LEVEL_1_BUS(); //RW_CA_LEVEL_1 CA = busCA.getData(allIDAssessment[i]); //get EquipmentID ----> get EquipmentTypeName and APIComponentType int equipmentID = assBus.getEquipmentID(allIDAssessment[i]); EQUIPMENT_MASTER_BUS eqMaBus = new EQUIPMENT_MASTER_BUS(); EQUIPMENT_TYPE_BUS eqTypeBus = new EQUIPMENT_TYPE_BUS(); String equipmentTypename = eqTypeBus.getEquipmentTypeName(eqMaBus.getEquipmentTypeID(equipmentID)); COMPONENT_MASTER_BUS comMasterBus = new COMPONENT_MASTER_BUS(); API_COMPONENT_TYPE_BUS apiBus = new API_COMPONENT_TYPE_BUS(); int apiID = comMasterBus.getAPIComponentTypeID(equipmentID); String API_ComponentType_Name = apiBus.getAPIComponentTypeName(apiID); RW_INPUT_CA_LEVEL_1_BUS busInputCA = new RW_INPUT_CA_LEVEL_1_BUS(); RW_INPUT_CA_LEVEL_1 inputCA = busInputCA.getData(allIDAssessment[i]); SITES_BUS busSite = new SITES_BUS(); FACILITY_BUS busFacility = new FACILITY_BUS(); RW_ASSESSMENT_BUS busAssessment = new RW_ASSESSMENT_BUS(); risk.SitesName = busSite.getSiteName(eqMaBus.getSiteID(equipmentID)); risk.FacilityName = busFacility.getFacilityName(eqMaBus.getFacilityID(equipmentID)); risk.AssessmentName = busAssessment.getAssessmentName(allIDAssessment[i]); risk.EquipmentName = eqMaBus.getEquipmentName(equipmentID); risk.EquipmentNumber = eqMaBus.getEquipmentNumber(equipmentID); //Equipment Name or Equipment Number can dc gan lai risk.EquipmentDesc = eqMaBus.getEquipmentDesc(equipmentID); //Equipment Description gan lai risk.EquipmentType = equipmentTypename; //Equipment type risk.ComponentName = comMasterBus.getComponentName(equipmentID); //component name risk.RepresentFluid = inputCA.API_FLUID; //Represent fluid risk.FluidPhase = inputCA.SYSTEM; //fluid phase risk.currentRisk = 0; //current risk //risk.cofcatFlammable = CA.CA_inj_flame; //cofcat. Flammable //risk.cofcatPeople = CA.FC_inj;//cofcat people //risk.cofcatAsset = CA.FC_prod;//cofcat assessment //risk.cofcatEnv = CA.FC_envi;//cofcat envroment //risk.cofcatReputation = 0; //cof reputation //risk.cofcatCombined = CA.FC_total; //combined //risk.componentMaterialGrade; //component material glade risk.initThinningPoF = fullPoF.ThinningAP1; //Thinning POF risk.initEnvCracking = fullPoF.SCCAP1; //Cracking env risk.initOtherPoF = fullPoF.HTHA_AP1 + fullPoF.BrittleAP1; //OtherPOF risk.initPoF = risk.initThinningPoF + risk.initEnvCracking + risk.initOtherPoF; //Init POF risk.extThinningPoF = fullPoF.ExternalAP1; //Ext Thinning POF risk.extEnvCrackingPoF = 0; //ExtEnv Cracking risk.extOtherPoF = 0; //Ext Other POF risk.extPoF = risk.extThinningPoF + risk.extEnvCrackingPoF + risk.extOtherPoF; //Ext POF risk.PoF = risk.initPoF + risk.extPoF; //POF //risk.CurrentRiskCalculation = fullPoF.PoFAP1 * CA.FC_total; //Current risk //risk.futureRisk = fullPoF.PoFAP2 * CA.FC_total; dataRisk.Add(risk); } return(dataRisk); }