This repository has been archived on 2025-11-27. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
AUTS_OLD/AUTS_ServiceControler/FrmSyncTasks.vb
2024-03-11 16:34:21 +08:00

97 lines
3.4 KiB
VB.net
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Imports System.Text
Imports UTS_Core.Database.DbExecutor
Imports UTS_Core.UTSModule.Service
Public Class FrmSyncTasks
Implements ITaskForm
Public Property DbType() As DbTypeEnum = DbTypeEnum.Sqlite
''' <summary>
''' 显示窗体
''' </summary>
''' <param name="parentControl">把本窗体打包放在其他容器内</param>
Public Sub ShowForm(parentControl As Control) Implements ITaskForm.ShowForm
FormBorderStyle = FormBorderStyle.None
TopLevel = False
Dock = DockStyle.Fill
Parent = parentControl
Show()
End Sub
Private Sub FrmSyncTasks_Load(sender As Object, e As EventArgs) Handles Me.Load
TBoTasksType.Text = ServiceTask.ServiceTaskTypeEnum.DbSync.ToString()
CboDbTypeName.DropDownStyle = ComboBoxStyle.DropDownList
CboDbTypeName.Items.Clear()
CboDbTypeName.Items.Add(DbTypeEnum.Mysql.ToString())
CboDbTypeName.Items.Add(DbTypeEnum.Sqlite.ToString())
If CboDbTypeName.Items.Count > DbType Then
CboDbTypeName.SelectedIndex = DbType
End If
End Sub
''' <summary>
''' 根据类型不同快速生成ConnJsonString
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
Private Sub BtnRapidGenerating_Click(sender As Object, e As EventArgs) Handles BtnRapidGenerating.Click
TBoConnStringSync.Text = RapidGenerating()
End Sub
''' <summary>
''' 快捷生成数据库连接字符串
''' </summary>
''' <returns></returns>
Private Function RapidGenerating() As String
Dim connStr As New StringBuilder
FrmTasksDbType.DbType = DbType
If FrmTasksDbType.ShowDialog = DialogResult.OK Then
connStr.Append(FrmTasksDbType.ConnectionParam.ToString())
connStr = connStr.Replace("\", "/")
End If
Return UTS_Core.Security.Aes128.EncryptStr(connStr.ToString, UTS_Core.Security.Aes128.ServerAesKey)
End Function
Public Sub SetParam(params As Dictionary(Of String, String)) Implements ITaskForm.SetParam
For Each param As KeyValuePair(Of String, String) In params
Select Case param.Key
Case "Name"
TBoTasksName.Text = param.Value
Case "Interval"
NudTasksInterval.Value = CInt(param.Value)
Case "LocalDbType"
CboDbTypeName.SelectedIndex = CInt([Enum].Parse(GetType(DbTypeEnum), param.Value))
Case "LocalConnString"
TBoConnStringSync.Text = param.Value
End Select
Next
End Sub
Public Function GetParams() As Dictionary(Of String, String) Implements ITaskForm.GetParams
Dim jsonParam As New Dictionary(Of String, String)
jsonParam.Clear()
jsonParam.Add("Type", TBoTasksType.Text)
jsonParam.Add("Name", TBoTasksName.Text)
jsonParam.Add("Interval", NudTasksInterval.Value.ToString)
jsonParam.Add("LocalDbType", CboDbTypeName.Text)
jsonParam.Add("LocalConnString", TBoConnStringSync.Text)
Return jsonParam
End Function
Private Sub CboDbTypeName_SelectedIndexChanged(sender As Object, e As EventArgs) Handles CboDbTypeName.SelectedIndexChanged
DbType = CType([Enum].Parse(GetType(DbTypeEnum), CboDbTypeName.SelectedIndex.ToString()), DbTypeEnum)
TBoConnStringSync.Text = String.Empty
End Sub
End Class