247 lines
9.3 KiB
C#
247 lines
9.3 KiB
C#
using Database;
|
|
using FluentFTP;
|
|
using KlassenBIB;
|
|
using SanShared;
|
|
using SanShared.Exceptions;
|
|
using SchnittstelleImporter;
|
|
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Diagnostics;
|
|
using System.Drawing;
|
|
using System.IO;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using WupiEngine;
|
|
|
|
namespace SanSystem
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public partial class frmMain : Form
|
|
{
|
|
/// <summary>
|
|
///
|
|
/// </summary>
|
|
public frmMain()
|
|
{
|
|
InitializeComponent();
|
|
|
|
//Global.Instance.
|
|
|
|
if (!Directory.Exists(Global.Instance.Projektpfad)) Directory.CreateDirectory(Global.Instance.Projektpfad);
|
|
try
|
|
{
|
|
Datenbank.Instance.LoadProjekt(Global.Instance.ProjektNummer, Global.Instance.Projektpfad);// Path.Combine(Global.Instance.Projektpfad,"18-850.xaml"));
|
|
}
|
|
catch(DataBaseVersionMismatchException ex)
|
|
{
|
|
frmExceptionWindow frmException = new frmExceptionWindow(ex.Message);
|
|
frmException.FormClosed += FrmException_FormClosed;
|
|
frmException.ShowDialog();
|
|
}
|
|
|
|
//Datenbank.Instance.CreateProjekt("");
|
|
this.Width = Screen.PrimaryScreen.WorkingArea.Width;
|
|
this.Height = Screen.PrimaryScreen.WorkingArea.Height;
|
|
this.WindowState = FormWindowState.Maximized;
|
|
this.StartPosition = FormStartPosition.Manual;
|
|
this.Location = new Point(0, 0);
|
|
|
|
projektToolStripMenuItem.Text = Global.Instance.language.Labels["mainmenu_projekt"];
|
|
neuToolStripMenuItem.Text = Global.Instance.language.Labels["mainmenu_projekt_new"];
|
|
öffnenToolStripMenuItem.Text = Global.Instance.language.Labels["mainmenu_projekt_open"];
|
|
|
|
toolStripStatus_projekt_Label.Text = Datenbank.Instance.projekt;
|
|
this.Text += " " + Global.Instance.PROGRAMMVERSION;
|
|
|
|
#if (DEBUG || LAPTOP)
|
|
this.Text += " INTERNE DEBUG VERSION";
|
|
#endif
|
|
if (Wupi.QueryInfo(0, QueryInfoOption.FirmCode) == 0)
|
|
this.Text += " nicht geschützter Version nur für TESTZWECKE!";
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
private void FrmException_FormClosed(object sender, FormClosedEventArgs e)
|
|
{
|
|
Environment.Exit(0);
|
|
}
|
|
|
|
private void frm_main_Load(object sender, EventArgs e)
|
|
{
|
|
|
|
frmStrassenList strassenList = new frmStrassenList();
|
|
strassenList.MdiParent = this;
|
|
strassenList.Show();
|
|
|
|
|
|
|
|
//frmObjektEdit frmObjektEdit = new frmObjektEdit();
|
|
//frmObjektEdit.Show();
|
|
}
|
|
|
|
private void frm_main_FormClosing(object sender, FormClosingEventArgs e)
|
|
{
|
|
|
|
Datenbank.Instance.SaveProjekt();
|
|
}
|
|
|
|
private void neuToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
frmNewProjekt frmNewProjekt = new frmNewProjekt();
|
|
frmNewProjekt.FormClosed += FrmProjektList_FormClosed;
|
|
frmNewProjekt.ShowDialog();
|
|
}
|
|
|
|
private void öffnenToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
//
|
|
frmProjektList frmProjektList = new frmProjektList();
|
|
|
|
frmProjektList.FormClosed += FrmProjektList_FormClosed;
|
|
frmProjektList.ShowDialog();
|
|
}
|
|
|
|
private void FrmProjektList_FormClosed(object sender, FormClosedEventArgs e)
|
|
{
|
|
toolStripStatus_projekt_Label.Text = Global.Instance.ProjektNummer;
|
|
Form[] openedWindows = this.MdiChildren;
|
|
foreach(Form form in openedWindows)
|
|
{
|
|
form.Close();
|
|
form.Dispose();
|
|
}
|
|
frmStrassenList strassenList = new frmStrassenList();
|
|
strassenList.MdiParent = this;
|
|
strassenList.Top = 0;
|
|
strassenList.Left = 0;
|
|
strassenList.Location = new Point(0, 0);
|
|
strassenList.StartPosition = FormStartPosition.Manual;
|
|
strassenList.Show();
|
|
}
|
|
|
|
private void speichernToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Datenbank.Instance.SaveProjekt();
|
|
}
|
|
|
|
private void massenstatistikToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
frmSelectMassenDate frmSelectMassenDate = new frmSelectMassenDate();
|
|
frmSelectMassenDate.ShowDialog();
|
|
}
|
|
|
|
private void stammdatenImportierenToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
OpenFileDialog openFileDialog = new OpenFileDialog();
|
|
openFileDialog.Filter = "XML Daten | *.xml";
|
|
if (openFileDialog.ShowDialog() == DialogResult.OK)
|
|
{
|
|
string path = openFileDialog.FileName;
|
|
|
|
IImportedObjekte importedObjekte = SchnittstelleImporter.ImportBuilder.Import(ImportSchnittstellen.XML2006);
|
|
importedObjekte.XMLFile = path;//@"C:\Users\Damian\Desktop\XML\3_Zustandsdaten\ISYBAU_XML-2006-Zustandsdaten_DIN_EN_13508-2.xml";
|
|
importedObjekte.Projektnummer = Global.Instance.ProjektNummer;
|
|
Datenbank.Instance.loadedProjekt.Objekte.AddRange(importedObjekte.GetInspektionsobjekte());
|
|
|
|
Form[] openedWindows = this.MdiChildren;
|
|
foreach (Form form in openedWindows)
|
|
{
|
|
form.Close();
|
|
form.Dispose();
|
|
}
|
|
frmStrassenList strassenList = new frmStrassenList();
|
|
strassenList.MdiParent = this;
|
|
strassenList.Top = 0;
|
|
strassenList.Left = 0;
|
|
strassenList.Location = new Point(0, 0);
|
|
strassenList.StartPosition = FormStartPosition.Manual;
|
|
strassenList.Show();
|
|
}
|
|
}
|
|
|
|
private void auftraggeberToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
frmAuftraggeberEdit frmAuftraggeberEdit = new frmAuftraggeberEdit(Datenbank.Instance.loadedProjekt.Auftraggeber);
|
|
frmAuftraggeberEdit.ShowDialog();
|
|
}
|
|
|
|
private void ProjektordnerÖffnenToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
Process prozess = new Process();
|
|
prozess.StartInfo.FileName = "explorer";
|
|
try
|
|
{
|
|
prozess.StartInfo.Arguments = Path.Combine(Environment.CurrentDirectory, Global.Instance.Projektpfad);
|
|
prozess.Start();
|
|
}
|
|
catch(Exception ex)
|
|
{
|
|
MessageBox.Show("Es ist ein fehler aufgetreten beim öffnen vom Baustellenordner " + ex.Message);
|
|
}
|
|
}
|
|
|
|
private void ImprägnierberichteToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
frmImprägnierBerichtList frmImprägnierBerichtList = new frmImprägnierBerichtList();
|
|
frmImprägnierBerichtList.ShowDialog();
|
|
}
|
|
|
|
private void MassenberichteToolStripMenuItem_Click(object sender, EventArgs e)
|
|
{
|
|
List<InlinerSanierung> ausdruck = new List<InlinerSanierung>();
|
|
List<BilderObject> bilder = new List<BilderObject>();
|
|
foreach(Inspektionsobjekt objekte in Database.Datenbank.Instance.loadedProjekt.Objekte)
|
|
{
|
|
if (bilder.Count > 0) bilder.Clear();
|
|
foreach(AbstractSanieren san in objekte.Sanierung)
|
|
{
|
|
if(san is InlinerSanierung)
|
|
{
|
|
ausdruck.Add((InlinerSanierung)san);
|
|
}
|
|
else if(san is SchachtAnbindung)
|
|
{
|
|
foreach(SavedBilder bild in (san as SchachtAnbindung).SavedBilders)
|
|
{
|
|
string komment = String.Empty;
|
|
if ((san as SchachtAnbindung).SchachtNummer != null)
|
|
{
|
|
komment = string.Format("{0} von Schacht: {1}", bild.Bildname, (san as SchachtAnbindung).SchachtNummer);
|
|
}
|
|
bilder.Add(new BilderObject()
|
|
{
|
|
Path = bild.Speicherpfad,
|
|
|
|
Kommentar = komment
|
|
});
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
foreach(InlinerSanierung san in ausdruck)
|
|
{
|
|
|
|
string destinationPath = san.CheckVerzeichnisse(Global.Instance.Projektpfad);
|
|
Hashtable hashtable = san.MakeProtokoll(destinationPath, Database.Datenbank.Instance.loadedProjekt, DateTime.MinValue);
|
|
DirectoryInfo directory = Directory.GetParent(destinationPath);
|
|
string speicherpfad = Path.Combine(directory.FullName,"Einbauprotokolle");
|
|
BerichtGen.FrmOptions options = new BerichtGen.FrmOptions("JUME", "liner_einbauBlueLight.docx", speicherpfad, san.Inspektionsobjekt.Objektbezeichnung, hashtable, bilder,null,true);
|
|
|
|
}
|
|
//options.ShowDialog();
|
|
MessageBox.Show("Fertig");
|
|
}
|
|
}
|
|
}
|