TPS1100-Convert/FormGsiJobs.vb
2024-07-25 03:01:25 +02:00

348 lines
13 KiB
VB.net

Imports System.IO
Imports System.IO.Compression
Imports System.Windows.Forms
Public Class FormGsiJobs
Public projektAktiven
Public projektAktivenMapa
Public projektIzbran
Public projektIzbranMapa
Public jobIzbran
Public jobDatoteka
' Funkcije izvedene pri nalaganju okna
Private Sub FormGsiJobs_Load(sender As Object, e As EventArgs) Handles MyBase.Load
projektAktiven = My.Settings.Projekt.ToString
projektAktivenMapa = My.Settings.ProjektMapa.ToString
LabelDeloProj.Text = projektAktiven
LabelDeloMapa.Text = projektAktivenMapa
ProjektBeriNast()
End Sub
Public Sub ProjektBeriNast()
Dim datProjektiNast = "tps1100_projekti.txt"
Dim i As Integer = 0
Dim iselected As Integer = 0
' Uvoz nastavitev iz datototeke
If My.Computer.FileSystem.FileExists(datProjektiNast) Then
Dim streamReader As StreamReader = New StreamReader(datProjektiNast)
Do Until streamReader.EndOfStream
' Read and Split each line to separate it into fields
Dim line() As String = streamReader.ReadLine().Split("=")
If (line(0) IsNot "") Then
Dim projIme As String = line(0)
Dim projMapa As String = line(1)
ListViewProj.Items.Add(projIme).SubItems.Add(projMapa)
If projIme = "Virtualna Kartica" Then
ListViewProj.Items.Item(i).ImageIndex = 2
Else
ListViewProj.Items.Item(i).ImageIndex = 1
End If
If projIme = My.Settings.Projekt Then
iselected = i
End If
i = i + 1
End If
Loop
streamReader.Close()
streamReader.Dispose()
My.Settings.Save()
ListViewProj.Items.Item(iselected).Selected = True
ListViewProj.Focus()
Else
' Izvoz kodiranja v TXT datoteko
Dim dataNast As String = ""
dataNast = dataNast + "Virtualna Kartica=Virtualna Kartica\GSI" + vbCrLf
dataNast = dataNast + "Test Projekt=Projekti\Test Projekt" + vbCrLf
My.Computer.FileSystem.WriteAllText(datProjektiNast, dataNast, False)
End If
End Sub
Public Sub ProjektiShraniNast()
Dim datProjektiNast = "tps1100_projekti.txt"
' Uvoz nastavitev iz datototeke
If My.Computer.FileSystem.FileExists(datProjektiNast) Then
Dim dataProj As ListView.ListViewItemCollection = Me.ListViewProj.Items
Dim item As ListViewItem
Dim ime As String = ""
Dim mapa As String = ""
Dim dataOut As String = ""
For Each item In dataProj
ime = item.SubItems(0).Text
mapa = item.SubItems(1).Text
dataOut = dataOut + ime + "=" + mapa + vbCrLf
Next
My.Computer.FileSystem.WriteAllText(datProjektiNast, dataOut, False)
End If
End Sub
Public Sub UvoziMapeProj()
Dim appPath As String = My.Application.Info.DirectoryPath.ToString
Dim mapaProjekti As String = "\Projekti"
Dim pathProjekti As String = appPath + mapaProjekti
Dim mapeSeznam = My.Computer.FileSystem.GetDirectories(pathProjekti)
Dim mapa
Dim i As Integer = 1
ListViewProj.Clear()
ListViewProj.Items.Add("Virtualna Kartica", 2).SubItems.Add("Virtualna Kartica\GSI")
For Each mapa In mapeSeznam
Dim projIme As String = Path.GetFullPath(mapa).Replace(pathProjekti + "\", "").ToString
Dim projMapa As String = "Projekti\" + projIme
ListViewProj.Items.Add(projIme, 1).SubItems.Add(projMapa)
i = i + 1
Next
End Sub
Private Sub UvoziGsiJob()
If OpenFileDialogUvoziJob.ShowDialog = DialogResult.OK Then
Dim delovnaMapa = My.Application.Info.DirectoryPath.ToString + "\" + My.Settings.ProjektMapa.ToString + "\"
Dim fileUvoz = OpenFileDialogUvoziJob.FileName
Dim fileIme = Path.GetFileName(OpenFileDialogUvoziJob.FileName)
Dim fileIzvoz = delovnaMapa + fileIme
My.Computer.FileSystem.CopyFile(fileUvoz, fileIzvoz, True)
OpenFileDialogUvoziJob.FileName = fileIzvoz
End If
OpenFileDialogUvoziJob.Dispose()
End Sub
Private Sub NastaviDelovniProj()
LabelDeloProj.Text = LabelIzbProj.Text
LabelDeloMapa.Text = LabelIzbProjMapa.Text
My.Settings.Projekt = LabelDeloProj.Text
My.Settings.ProjektMapa = LabelDeloMapa.Text
My.Settings.Save()
If LabelDeloProj.Text = "Virtualna Kartica" Then
Form1.ToolStripLabel2.Text = LabelDeloProj.Text
Form1.ToolStripLabel2.Image = My.Resources.icons8_micro_sd_50
Else
Form1.ToolStripLabel2.Text = LabelDeloProj.Text
Form1.ToolStripLabel2.Image = My.Resources.icons8_browse_folder_50_2
End If
End Sub
Private Sub NaloziJob()
LabelDeloProj.Text = LabelIzbProj.Text
LabelDeloMapa.Text = LabelIzbProjMapa.Text
My.Settings.Projekt = LabelDeloProj.Text
My.Settings.ProjektMapa = LabelDeloMapa.Text
My.Settings.Save()
If LabelDeloProj.Text = "Virtualna Kartica" Then
Form1.ToolStripLabel2.Text = LabelDeloProj.Text
Form1.ToolStripLabel2.Image = My.Resources.icons8_micro_sd_50
Else
Form1.ToolStripLabel2.Text = LabelDeloProj.Text
Form1.ToolStripLabel2.Image = My.Resources.icons8_browse_folder_50_2
End If
Form1.datJob = TextBoxJobDat.Text
Form1.NaloziGsiJob()
Me.Close()
End Sub
Private Sub PreberiJobe()
Dim izbran As ListView.SelectedListViewItemCollection = Me.ListViewProj.SelectedItems
Dim item As ListViewItem
Dim ime As String = ""
Dim mapa As String = ""
Dim ix As Integer = 0
For Each item In izbran
ime = item.SubItems(0).Text
mapa = item.SubItems(1).Text
Next
LabelIzbProj.Text = ime.ToString
LabelIzbProjMapa.Text = mapa.ToString
Dim delovnaMapa = My.Application.Info.DirectoryPath.ToString + "\" + mapa.ToString
projektIzbran = ime.ToString
projektIzbranMapa = delovnaMapa
Dim datotekeJobi = My.Computer.FileSystem.GetFiles(delovnaMapa, FileIO.SearchOption.SearchTopLevelOnly, "*.GSI")
ListView2.Clear()
LabelJobIme.Text = ""
TextBoxJobDat.Text = ""
For Each datJob In datotekeJobi
ListView2.Items.Add(Path.GetFileName(datJob).ToString, 0).SubItems.Add(Path.GetFullPath(datJob))
ix = ix + 1
Next
If ime = "Virtualna Kartica" Then
ToolStripButton1.Enabled = False
ToolStripButton2.Enabled = False
ToolStripButton6.Enabled = False
ToolStripButton7.Enabled = False
Else
ToolStripButton1.Enabled = True
ToolStripButton2.Enabled = True
ToolStripButton6.Enabled = False
ToolStripButton7.Enabled = False
End If
End Sub
Public Sub ArhivirajProjekt()
' Arhiviraj izbran jprojekt
Dim arhivCas = System.DateTime.Now.ToString("yyyyMMdd-HHmm")
Dim mapaZav = My.Application.Info.DirectoryPath.ToString + "\Zavarovanja\"
Dim arhivZav = mapaZav + "Projekt_" + projektIzbran + "_" + arhivCas + ".zip"
Dim msgArhivProj = MsgBox("Arhiviram projekt '" + projektIzbran + "'", vbYesNo + vbExclamation, "Arhiviranje Projekta")
If msgArhivProj = DialogResult.Yes Then
ZipFile.CreateFromDirectory(projektIzbranMapa, arhivZav, CompressionLevel.Optimal, False)
MessageBox.Show("Kartica zavarovana v: " + vbCrLf + arhivZav.ToString)
End If
End Sub
Public Sub OdstraniProjekt()
' Izbriši izbran projekt
Dim msgDelProj = MsgBox("Odstranim projekt [" + projektIzbran + "]?", vbYesNo + vbCritical, "Brisanje Projekta")
If msgDelProj = DialogResult.Yes Then
My.Computer.FileSystem.DeleteDirectory(projektIzbranMapa, FileIO.DeleteDirectoryOption.DeleteAllContents, FileIO.RecycleOption.SendToRecycleBin)
UvoziMapeProj()
ProjektiShraniNast()
End If
End Sub
Private Sub ListViewProj_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListViewProj.SelectedIndexChanged
PreberiJobe()
End Sub
Private Sub ListViewProj_DoubleClick(sender As Object, e As EventArgs) Handles ListViewProj.DoubleClick
NastaviDelovniProj()
Me.Close()
End Sub
Private Sub ButtonDelovni_Click(sender As Object, e As EventArgs) Handles ButtonDelovni.Click, ToolStripButton5.Click
NastaviDelovniProj()
End Sub
Private Sub ListView2_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListView2.SelectedIndexChanged
Dim izbran As ListView.SelectedListViewItemCollection = Me.ListView2.SelectedItems
Dim item As ListViewItem
Dim ime As String = ""
Dim mapa As String = ""
For Each item In izbran
ime = item.SubItems(0).Text
mapa = item.SubItems(1).Text
Next
LabelJobIme.Text = ime.ToString
TextBoxJobDat.Text = mapa.ToString
If LabelJobIme.Text = "" Then
ToolStripButton6.Enabled = False
ToolStripButton7.Enabled = False
Else
ToolStripButton6.Enabled = True
ToolStripButton7.Enabled = True
End If
'Dim delovnaJob = My.Application.Info.DirectoryPath.ToString + "\" + mapa.ToString
'projektIzbran = ime.ToString
'projektIzbranMapa = delovnaMapa
'Dim datotekeJobi = My.Computer.FileSystem.GetFiles(delovnaMapa, FileIO.SearchOption.SearchTopLevelOnly, "*.GSI")
End Sub
Private Sub ListView2_DoubleClick(sender As Object, e As EventArgs) Handles ListView2.DoubleClick
NaloziJob()
End Sub
Private Sub TSButtonUvozi_Click(sender As Object, e As EventArgs)
UvoziGsiJob()
End Sub
Private Sub ToolStripButton7_Click(sender As Object, e As EventArgs) Handles ToolStripButton7.Click
' Arhiviraj izbran job
Dim datIzb = TextBoxJobDat.Text
Dim datArh = datIzb.Replace(LabelJobIme.Text, "_ARHIV\" + LabelJobIme.Text)
Dim msgArh = MsgBox("Arhiviram job: " + LabelJobIme.Text, vbOKCancel + vbExclamation, "Arhiviranje Job-a...")
If msgArh = DialogResult.OK Then
If My.Computer.FileSystem.FileExists(datIzb) Then
My.Computer.FileSystem.MoveFile(datIzb, datArh, True)
End If
' Ponovno osveži vsebino seznama
PreberiJobe()
End If
End Sub
Private Sub ToolStripButton6_Click(sender As Object, e As EventArgs) Handles ToolStripButton6.Click
' Izbriši izbran job
Dim datIzb = TextBoxJobDat.Text
Dim msgArh = MsgBox("Izbrišem job: " + LabelJobIme.Text, vbOKCancel + vbCritical, "Brisanje Job-a...")
If msgArh = DialogResult.OK Then
If My.Computer.FileSystem.FileExists(datIzb) Then
My.Computer.FileSystem.DeleteFile(datIzb, FileIO.UIOption.OnlyErrorDialogs, FileIO.RecycleOption.SendToRecycleBin)
End If
' Ponovno osveži vsebino seznama
PreberiJobe()
End If
End Sub
Private Sub ToolStripButton1_Click(sender As Object, e As EventArgs) Handles ToolStripButton1.Click
' Arhiviraj izbran jprojekt
ArhivirajProjekt()
End Sub
Private Sub ToolStripButton2_Click(sender As Object, e As EventArgs) Handles ToolStripButton2.Click
' Izbriši izbran projekt
OdstraniProjekt()
End Sub
Private Sub NovProjektToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles NovProjektToolStripMenuItem.Click
DialogNovProj.ShowDialog()
End Sub
Private Sub OdpriMapoToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles OdpriMapoToolStripMenuItem.Click
Process.Start(projektIzbranMapa)
End Sub
Private Sub UvoziProjekteToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles UvoziProjekteToolStripMenuItem.Click
UvoziMapeProj()
Dim msgUvoziMape = MsgBox("Shranim seznam projektov?" + vbCrLf + "Datoteka: tps1100_projekti.txt", vbOKCancel + vbExclamation, "Shranim Projekte?")
If msgUvoziMape = DialogResult.OK Then
ProjektiShraniNast()
End If
End Sub
Private Sub ArhivirajProjektToolStripMenuItem_Click(sender As Object, e As EventArgs)
ArhivirajProjekt()
End Sub
Private Sub NastaviDelovniProjektToolStripMenuItem_Click(sender As Object, e As EventArgs)
NastaviDelovniProj()
End Sub
Private Sub ToolStripButton3_Click(sender As Object, e As EventArgs) Handles ToolStripButton3.Click
DialogNovProj.ShowDialog()
End Sub
Private Sub ToolStripButton4_Click(sender As Object, e As EventArgs) Handles ToolStripButton4.Click
UvoziGsiJob()
End Sub
Private Sub ToolStripButton9_Click(sender As Object, e As EventArgs) Handles ToolStripButton9.Click
NastaviDelovniProj()
End Sub
End Class