Initial commit
This commit is contained in:
@@ -0,0 +1,276 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace StacjaProb
|
||||
{
|
||||
public partial class pumpCatalogueDetails : Form
|
||||
{
|
||||
|
||||
public string pumpID;
|
||||
public int manufID = 0;
|
||||
public string selectedManufactures = "";
|
||||
|
||||
public pumpCatalogueDetails()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
|
||||
private void loadPumpInfo()
|
||||
{
|
||||
// Dla RAMBu
|
||||
buttonDelete.Visible = false;
|
||||
buttonEdytuj.Visible = false;
|
||||
|
||||
mySqlFunctions.initConnection();
|
||||
if (mySqlFunctions.OpenConnection())
|
||||
{
|
||||
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand("select * from seg_pumps left join seg_manufacturers on PUP_MCF_ID=MCF_ID where PUP_ID=" + pumpID, mySqlFunctions.connection);
|
||||
MySql.Data.MySqlClient.MySqlDataReader dataReader = cmd.ExecuteReader();
|
||||
while (dataReader.Read())
|
||||
{
|
||||
try
|
||||
{
|
||||
inQmin.Text = dataReader["PUP_Q_MIN"].ToString();
|
||||
inQmax.Text = dataReader["PUP_Q_MAX"].ToString();
|
||||
inHp.Text = dataReader["PUP_H_P"].ToString();
|
||||
inHmin.Text = dataReader["PUP_H_MIN"].ToString();
|
||||
inHmax.Text = dataReader["PUP_H_MAX"].ToString();
|
||||
inETAmax.Text = dataReader["PUP_ETA_MAX"].ToString();
|
||||
inDlugosc.Text = dataReader["PUP_PUMP_LENGTH"].ToString();
|
||||
inSrednica.Text = dataReader["PUP_DIAMETER"].ToString();
|
||||
inMasa.Text = dataReader["PUP_WEIGHT"].ToString();
|
||||
|
||||
manufID = Convert.ToInt32(dataReader["PUP_MCF_ID"].ToString());
|
||||
selectedManufactures = dataReader["MCF_NAME"].ToString();
|
||||
inManufacturers.Text = dataReader["MCF_NAME"].ToString();
|
||||
|
||||
//dataReader["PUP_NAME"], dataReader["PUP_Q_N"], dataReader["PUP_H_P"], dataReader["MCF_NAME"], dataReader["PUP_ID"]);
|
||||
int pID = Convert.ToInt32(pumpID);
|
||||
int q_nom = Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(dataReader["PUP_Q_N"].ToString().Replace(".", ","))));
|
||||
int q_max = Convert.ToInt32(Math.Ceiling(1.6 * q_nom));
|
||||
int h_max = Convert.ToInt32(1.6 * Convert.ToInt32(Math.Ceiling(Convert.ToDecimal(dataReader["PUP_H_MAX"].ToString().Replace(".", ",")))));
|
||||
|
||||
setChartAreasAndScale(chartH, "H", q_max, "Q [m3/h]", h_max, "H [m]");
|
||||
setBackgroundArea(chartH, "H", 25, q_max, h_max, q_nom);
|
||||
|
||||
setChartAreasAndScale(chartETA, "ETA", q_max, "Q [m3/h]", 1, "ƞ");
|
||||
setBackgroundArea(chartETA, "ETA", 25, q_max, 1, q_nom);
|
||||
|
||||
drawCatalougeSplineForPump(pID, q_max);
|
||||
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
mySqlFunctions.CloseConnection();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void pumpCatalogueDetails_Load(object sender, EventArgs e)
|
||||
{
|
||||
loadPumpInfo();
|
||||
selectEnergeticParameters(pumpID);
|
||||
loadPumpStockConnection();
|
||||
|
||||
}
|
||||
|
||||
private void selectEnergeticParameters(string pId)
|
||||
{
|
||||
dataGridViewPumpParam.Rows.Clear();
|
||||
int i = 1;
|
||||
dataGridViewPumpParam.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
|
||||
dataGridViewPumpParam.ColumnCount = 4;
|
||||
dataGridViewPumpParam.Columns[0].Name = "";
|
||||
dataGridViewPumpParam.Columns[1].Name = "Q [m3/h]";
|
||||
dataGridViewPumpParam.Columns[2].Name = "H [m]";
|
||||
dataGridViewPumpParam.Columns[3].Name = "η";
|
||||
|
||||
mySqlFunctions.initConnection();
|
||||
if (mySqlFunctions.OpenConnection())
|
||||
{
|
||||
MySql.Data.MySqlClient.MySqlCommand cmd1 = new MySql.Data.MySqlClient.MySqlCommand("select tb1.PEP_X_PARAM X, tb1.PEP_Y_PARAM Y1, tb2.PEP_Y_PARAM Y2 from (select PEP_X_PARAM,PEP_Y_PARAM from seg_pump_eng_param where PEP_PUP_ID=" + pId + " and PEP_TYPE='H') tb1,(select PEP_X_PARAM,PEP_Y_PARAM from seg_pump_eng_param where PEP_PUP_ID="+pId+" and PEP_TYPE='ETA') tb2 where tb1.PEP_X_PARAM=tb2.PEP_X_PARAM order by X", mySqlFunctions.connection);
|
||||
MySql.Data.MySqlClient.MySqlDataReader dataReader = cmd1.ExecuteReader();
|
||||
while (dataReader.Read())
|
||||
{
|
||||
dataGridViewPumpParam.Rows.Add(i, dataReader["X"], dataReader["Y1"], dataReader["Y2"]);
|
||||
i++;
|
||||
}
|
||||
dataGridViewPumpParam.Columns[0].AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
|
||||
dataGridViewPumpParam.Columns[1].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
|
||||
dataGridViewPumpParam.Columns[2].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
|
||||
dataGridViewPumpParam.Columns[3].AutoSizeMode = DataGridViewAutoSizeColumnMode.Fill;
|
||||
mySqlFunctions.CloseConnection();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
private void setChartAreasAndScale(System.Windows.Forms.DataVisualization.Charting.Chart chartType, string name, int x_scope, string x_name, int y_scope, string y_name)
|
||||
{
|
||||
chartType.ChartAreas.Clear();
|
||||
chartType.ChartAreas.Add(name);
|
||||
chartType.ChartAreas[name].AxisX.Minimum = 0;
|
||||
chartType.ChartAreas[name].AxisX.Maximum = x_scope;
|
||||
chartType.ChartAreas[name].AxisX.Interval = x_scope / 10;
|
||||
chartType.ChartAreas[name].AxisY.Minimum = 0;
|
||||
chartType.ChartAreas[name].AxisY.Maximum = y_scope;
|
||||
chartType.ChartAreas[name].AxisY.Interval = y_scope / 5;
|
||||
chartType.ChartAreas[name].AxisX.Title = x_name;
|
||||
chartType.ChartAreas[name].AxisY.Title = y_name;
|
||||
chartType.ChartAreas[name].AxisX.LabelStyle.Font = new Font("Tahoma", 7);
|
||||
chartType.ChartAreas[name].AxisY.LabelStyle.Font = new Font("Tahoma", 7);
|
||||
}
|
||||
|
||||
|
||||
private void setBackgroundArea(System.Windows.Forms.DataVisualization.Charting.Chart chartType, string name, int alfa_color, int x_scope, int y_scope, double qn)
|
||||
{
|
||||
chartType.Series.Clear();
|
||||
chartType.Series.Add(name + "_BG1");
|
||||
chartType.Series[name + "_BG1"].Color = Color.FromArgb(alfa_color, 255, 0, 0);
|
||||
chartType.Series[name + "_BG1"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Area;
|
||||
chartType.Series[name + "_BG1"].Points.AddXY(0, y_scope);
|
||||
chartType.Series[name + "_BG1"].Points.AddXY(0.55 * qn, y_scope);
|
||||
chartType.Series.Add(name + "_BG2");
|
||||
chartType.Series[name + "_BG2"].Color = Color.FromArgb(alfa_color, 255, 255, 0);
|
||||
chartType.Series[name + "_BG2"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Area;
|
||||
chartType.Series[name + "_BG2"].Points.AddXY(0.55 * qn, y_scope);
|
||||
chartType.Series[name + "_BG2"].Points.AddXY(0.7 * qn, y_scope);
|
||||
chartType.Series.Add(name + "_BG3");
|
||||
chartType.Series[name + "_BG3"].Color = Color.FromArgb(alfa_color, 0, 255, 0);
|
||||
chartType.Series[name + "_BG3"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Area;
|
||||
chartType.Series[name + "_BG3"].Points.AddXY(0.7 * qn, y_scope);
|
||||
chartType.Series[name + "_BG3"].Points.AddXY(1.22 * qn, y_scope);
|
||||
chartType.Series.Add(name + "_BG4");
|
||||
chartType.Series[name + "_BG4"].Color = Color.FromArgb(alfa_color, 255, 255, 0);
|
||||
chartType.Series[name + "_BG4"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Area;
|
||||
chartType.Series[name + "_BG4"].Points.AddXY(1.22 * qn, y_scope);
|
||||
chartType.Series[name + "_BG4"].Points.AddXY(1.35 * qn, y_scope);
|
||||
chartType.Series.Add(name + "_BG5");
|
||||
chartType.Series[name + "_BG5"].Color = Color.FromArgb(alfa_color, 255, 0, 0);
|
||||
chartType.Series[name + "_BG5"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Area;
|
||||
chartType.Series[name + "_BG5"].Points.AddXY(1.35 * qn, y_scope);
|
||||
chartType.Series[name + "_BG5"].Points.AddXY(x_scope, y_scope);
|
||||
}
|
||||
|
||||
|
||||
private void drawCatalougeSplineForPump(int pump_id, int q_max)
|
||||
{
|
||||
chartH.Series.Add("catalouge");
|
||||
chartH.Series["catalouge"].Color = Color.FromArgb(255, 187, 0, 0);
|
||||
chartH.Series["catalouge"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline;
|
||||
|
||||
chartETA.Series.Add("catalouge");
|
||||
chartETA.Series["catalouge"].Color = Color.FromArgb(255, 187, 0, 0);
|
||||
chartETA.Series["catalouge"].ChartType = System.Windows.Forms.DataVisualization.Charting.SeriesChartType.Spline;
|
||||
|
||||
|
||||
string x3modelH = mySqlFunctions.getPolyRegresionModel(pump_id, 3);
|
||||
string x3modelEta = mySqlFunctions.getPolyRegresionModel_ETA(pump_id, 3);
|
||||
|
||||
|
||||
for (int i = 0; i <= q_max; i++)
|
||||
{
|
||||
chartH.Series["catalouge"].Points.AddXY(i, convertDataFromSerial.setYparamFor3(x3modelH, i));
|
||||
chartETA.Series["catalouge"].Points.AddXY(i, convertDataFromSerial.setYparamFor3(x3modelEta, i));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
private void buttonEdytuj_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
pumpCatalogueAdd form = new pumpCatalogueAdd();
|
||||
form.pumpID = Convert.ToInt32(pumpID);
|
||||
form.textBoxTypPompy.Text = inPumpType.Text;
|
||||
form.textBoxQn.Text = inQn.Text;
|
||||
form.textBoxHp.Text = inHp.Text;
|
||||
form.textBoxETAmax.Text = inETAmax.Text;
|
||||
form.textBoxDlugosc.Text = inDlugosc.Text;
|
||||
form.textBoxSrednica.Text = inSrednica.Text;
|
||||
form.textBoxMasa.Text = inMasa.Text;
|
||||
form.comboBoxProd.Text = inManufacturers.Text;
|
||||
form.manufID = manufID;
|
||||
form.selectedManufactures = selectedManufactures;
|
||||
|
||||
form.FormClosed += new FormClosedEventHandler(form_FormClosed);
|
||||
form.ShowDialog();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
MessageBox.Show(ex.Message);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
void form_FormClosed(object sender, FormClosedEventArgs e)
|
||||
{
|
||||
loadPumpInfo();
|
||||
selectEnergeticParameters(pumpID);
|
||||
}
|
||||
|
||||
private void buttonClose_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
|
||||
// sprawdzanie, czy nie ma powiązanej pompy w stanach
|
||||
//
|
||||
private void loadPumpStockConnection()
|
||||
{
|
||||
int ile = 0;
|
||||
|
||||
mySqlFunctions.initConnection();
|
||||
if (mySqlFunctions.OpenConnection())
|
||||
{
|
||||
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand("select count(*) ILE from seg_dev_resources where DRS_DEV_TYPE=10 and DRS_DEV_ID=" + pumpID, mySqlFunctions.connection);
|
||||
MySql.Data.MySqlClient.MySqlDataReader dataReader = cmd.ExecuteReader();
|
||||
while (dataReader.Read())
|
||||
{
|
||||
try
|
||||
{
|
||||
ile = Convert.ToInt32(dataReader["ILE"].ToString());
|
||||
}
|
||||
catch { }
|
||||
}
|
||||
mySqlFunctions.CloseConnection();
|
||||
}
|
||||
|
||||
if (ile > 0) buttonDelete.Enabled = false;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
private void buttonDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (pumpID.Length <= 0) pumpID = "0";
|
||||
|
||||
if (MessageBox.Show("UWAGA!\nProces nieodwracalny.\nCzy na pewno chcesz usunąć pompę z katalogu?", "Potwierdzenie usunięcia z bazy", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
|
||||
{
|
||||
mySqlFunctions.initConnection();
|
||||
if (mySqlFunctions.OpenConnection())
|
||||
{
|
||||
MySql.Data.MySqlClient.MySqlCommand cmd = new MySql.Data.MySqlClient.MySqlCommand("DELETE FROM seg_pumps WHERE PUP_ID=" + pumpID, mySqlFunctions.connection);
|
||||
cmd.ExecuteNonQuery();
|
||||
MySql.Data.MySqlClient.MySqlCommand cmd1 = new MySql.Data.MySqlClient.MySqlCommand("DELETE FROM seg_pump_eng_param WHERE PEP_PUP_ID=" + pumpID, mySqlFunctions.connection);
|
||||
cmd1.ExecuteNonQuery();
|
||||
mySqlFunctions.CloseConnection();
|
||||
}
|
||||
this.Close();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user