初始化提交
仓库转移到Gitea,初始化提交,可能丢失以前的git版本日志
This commit is contained in:
622
AUTS_Vendor/FrmMain.vb
Normal file
622
AUTS_Vendor/FrmMain.vb
Normal file
@@ -0,0 +1,622 @@
|
||||
Imports System.Text
|
||||
Imports UTS_Core.Database
|
||||
Imports UTS_Core.UTSModule
|
||||
Imports UTS_Core.UTSModule.DbTableModel.Customer
|
||||
Imports UTS_Core.UTSModule.License
|
||||
Imports UTS_Core.UTSModule.DbTableModel
|
||||
|
||||
Public Class FrmMain
|
||||
Private Sub BtnCommit_Click(sender As Object, e As EventArgs) Handles BtnCommit.Click
|
||||
UpdateInstallTip(0, "注册客户准备中")
|
||||
|
||||
Try
|
||||
'更新License信息
|
||||
UpdateInstallTip(1, $"License信息更新中...")
|
||||
Dim lic As License = FillLicense()
|
||||
UpdateInstallTip(20, $"License信息更新完成!")
|
||||
|
||||
'生成License文件
|
||||
UpdateInstallTip(21, $"License文件生成中...")
|
||||
CreateVendorLicense(lic)
|
||||
UpdateInstallTip(40, $"License文件生成完成!")
|
||||
|
||||
'创建FTP文件夹
|
||||
UpdateInstallTip(41, $"Ftp文件夹生成中...")
|
||||
CreateFtpDic(lic)
|
||||
UpdateInstallTip(60, $"Ftp文件夹生成完成!")
|
||||
|
||||
'创建数据库的数据表
|
||||
UpdateInstallTip(61, $"创建数据库结构中...")
|
||||
CreateVendorTables(lic)
|
||||
UpdateInstallTip(99, $"创建数据库结构完成!")
|
||||
|
||||
UpdateInstallTip(100, $"注册客户完成")
|
||||
Catch ex As Exception
|
||||
Console.WriteLine($"Commit vendor error:{ex.Message}")
|
||||
UpdateInstallTip(100, $"注册客户失败,{ex.Message}")
|
||||
End Try
|
||||
End Sub
|
||||
|
||||
|
||||
Private Function FillLicense() As License
|
||||
'更新License缓存
|
||||
Dim lic As New License With {
|
||||
.ID = $"1",
|
||||
.VendorName = TxtVendorName.Text,
|
||||
.AuthorizationDate = $"{Now:yyyy-MM-dd HH:mm:ss}",
|
||||
.ExpirationDate = $"{DtpExpirationDate.Value:yyyy-MM-dd HH:mm:ss}",
|
||||
.DefaultUser = $"Admin",
|
||||
.DefaultPassword = $"Admin",
|
||||
.MysqlServer = TxtRemoteServer.Text,
|
||||
.MysqlPort = NudRemotePort.Value.ToString(),
|
||||
.MysqlUserID = TxtRemoteUser.Text,
|
||||
.MysqlPassword = TxtRemotePwd.Text,
|
||||
.MysqlDatabase = TxtRemotePrivateDb.Text,
|
||||
.PublicDb = TxtRemotePublicDb.Text,
|
||||
.SqliteDir = "LocalDB",
|
||||
.SqliteName = TxtLocalFileName.Text,
|
||||
.SqlitePassword = TxtLocalPwd.Text,
|
||||
.FtpHost = TxtFtpHost.Text,
|
||||
.FtpPort = NudFtpPort.Value.ToString(),
|
||||
.FtpUser = TxtFtpUser.Text,
|
||||
.FtpPwd = TxtFtpPwd.Text,
|
||||
.Mac = TxtMac.Text,
|
||||
.Remark = TxtRemard.Text,
|
||||
.UtsVersion = $"3",
|
||||
.Signature = $"this is a valid license data"
|
||||
}
|
||||
|
||||
Return lic
|
||||
End Function
|
||||
|
||||
''' <summary>
|
||||
''' 创建Ftp所需的文件夹
|
||||
''' </summary>
|
||||
''' <param name="lic"></param>
|
||||
Private Sub CreateFtpDic(lic As License)
|
||||
|
||||
UtsFtp.InitConnectParams(CInt(lic.FtpPort), lic.FtpUser, lic.FtpPwd)
|
||||
Dim ftp As UtsFtp = UtsFtp.CreateObject()
|
||||
ftp.FtpHost = lic.FtpHost
|
||||
Try
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/AOI", True) '拍摄站上传图像
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/Package", True) '装箱站上传图像
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/Product", True) '产品图像
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/Repair", True) '维修站位图像
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/Project", True) '测试站位流程
|
||||
ftp.CreateDir($"/uts_Manager/AUTS/{lic.VendorName}/Upload", True) '服务上传内容
|
||||
Catch ex As Exception
|
||||
Throw New Exception($"创建客户Ftp文件夹失败,{ex.Message}")
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub CreateVendorLicense(lic As License)
|
||||
'获取License文件名
|
||||
Dim licensePath As String
|
||||
Using saveDlg As New SaveFileDialog
|
||||
saveDlg.Title = $"请选择鉴权License文件的保存路径"
|
||||
saveDlg.Filter = $"License文件(*.dat)|*.dat"
|
||||
saveDlg.AddExtension = True
|
||||
If saveDlg.ShowDialog() <> DialogResult.OK Then Return
|
||||
licensePath = saveDlg.FileName
|
||||
End Using
|
||||
|
||||
UpdateInstallTip(30, $"License文件即将保存至{licensePath}.")
|
||||
'保存License文件
|
||||
lic.SaveLicenseFile(licensePath)
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub UpdateCompanyTable(db As DbExecutor, dbName As String, company As String)
|
||||
'更新公共库公司总表
|
||||
Dim tableName As String = $"{Manage.CustomerListTable.TableName}"
|
||||
Dim condition As String = $"`{Manage.CustomerListTable.ColNamesEnum.CustomerName}` = '{company}'"
|
||||
Dim cmdText As String = db.CmdHelper.DbSearch(dbName, "count(*)", tableName, condition)
|
||||
If CInt(db.ExecuteScalar(cmdText)) > 0 Then
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim field As New Dictionary(Of String, String) From
|
||||
{
|
||||
{$"{Manage.CustomerListTable.ColNamesEnum.CustomerName}", company}
|
||||
}
|
||||
|
||||
cmdText = db.CmdHelper.DbInsert(dbName, tableName, field)
|
||||
db.ExecuteNonQuery(cmdText)
|
||||
End Sub
|
||||
|
||||
Private Sub UpdateDatabaseTable(db As DbExecutor, dbName As String, company As String, userDb As String, user As String, pwd As String)
|
||||
''更新公共库公司总表
|
||||
Dim tableName As String = $"{Manage.CustomerListTable.TableName}"
|
||||
Dim condition As String = $"`{Manage.CustomerListTable.ColNamesEnum.CustomerName}` = '{company}'"
|
||||
Dim colName As String = $"{Manage.CustomerListTable.ColNamesEnum.ID}"
|
||||
Dim cmdText As String = db.CmdHelper.DbSearch(dbName, colName, tableName, condition)
|
||||
Dim companyID As String = db.ExecuteScalar(cmdText).ToString()
|
||||
|
||||
|
||||
'更新公共库数据库总表
|
||||
tableName = Manage.DbListTable.TableName
|
||||
condition = $"`{Manage.DbListTable.ColNamesEnum.DatabaseName}` = '{userDb}'"
|
||||
cmdText = db.CmdHelper.DbSearch(dbName, "count(*)", tableName, condition)
|
||||
If CInt(db.ExecuteScalar(cmdText)) > 0 Then
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim field2 As New Dictionary(Of String, String) From
|
||||
{
|
||||
{$"{Manage.DbListTable.ColNamesEnum.CompanyID}", companyID},
|
||||
{$"{Manage.DbListTable.ColNamesEnum.DatabaseName}", userDb},
|
||||
{$"{Manage.DbListTable.ColNamesEnum.DatabaseUser}", user},
|
||||
{$"{Manage.DbListTable.ColNamesEnum.DatabasePassword}", pwd},
|
||||
{$"{Manage.DbListTable.ColNamesEnum.DatabaseDesc}", ""}
|
||||
}
|
||||
|
||||
cmdText = db.CmdHelper.DbInsert(dbName, tableName, field2)
|
||||
db.ExecuteNonQuery(cmdText)
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub CreateProcedure(db As DbExecutor, dbName As String)
|
||||
'修改测试记录表字段存储过程
|
||||
Dim sqlCmd As New StringBuilder
|
||||
sqlCmd.Append($"Drop Procedure If Exists `{dbName}`.`AlterTestLogFiled`;" & vbCrLf)
|
||||
sqlCmd.Append($"Create Procedure `{dbName}`.`AlterTestLogFiled`(in dbName varchar(32),in tbName varchar(32),in filed varchar(32),in len int)" & vbCrLf)
|
||||
sqlCmd.Append("begin" & vbCrLf)
|
||||
sqlCmd.Append("DECLARE l_int int default 0;" & vbCrLf)
|
||||
sqlCmd.Append("DECLARE l_len int default 0;" & vbCrLf)
|
||||
sqlCmd.Append("DECLARE l_type varchar(16) default '';" & vbCrLf)
|
||||
sqlCmd.Append("select count(*),`DATA_TYPE`,`CHARACTER_MAXIMUM_LENGTH` into l_int,l_type,l_len from `information_schema`.`COLUMNS` WHERE TABLE_SCHEMA = dbName and TABLE_NAME = tbName and COLUMN_NAME = filed COLLATE utf8_general_ci;" & vbCrLf)
|
||||
sqlCmd.Append("if l_int = 0 then" & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = CONCAT('alter table ',dbName,'.',tbName,' add column ',filed,' varchar(',len,')');" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("if l_type = 'varchar' and len > l_len then" & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = CONCAT('alter table ',dbName,'.',tbName,' modify column ',filed,' varchar(',len,')');" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end" & vbCrLf)
|
||||
|
||||
db.ExecuteNonQuery(sqlCmd.ToString)
|
||||
|
||||
|
||||
'Sn总表新增条码存储过程
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append($"Drop Procedure If Exists `{dbName}`.`AlterSnListBarcode`;" & vbCrLf)
|
||||
sqlCmd.Append($"Create Procedure `{dbName}`.`AlterSnListBarcode`(in orderid int,in orderinternalid int,in pid int,in code varchar(32),in sntype int)" & vbCrLf)
|
||||
sqlCmd.Append("begin " & vbCrLf)
|
||||
sqlCmd.Append("DECLARE l_int int default 0; " & vbCrLf)
|
||||
sqlCmd.Append("select count(*) into l_int from `TBL_SnList` WHERE `BarCode` = code COLLATE utf8_general_ci; " & vbCrLf)
|
||||
sqlCmd.Append("if l_int = 0 then " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = CONCAT('Insert into TBL_SnList(OrderID,OrderInternalID,ProductID,BarCode,SnType) values(',orderid,',',orderinternalid,',',pid,',''',code,''',',sntype,')'); " & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd; " & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre; " & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre; " & vbCrLf)
|
||||
sqlCmd.Append("end if; " & vbCrLf)
|
||||
sqlCmd.Append("end " & vbCrLf)
|
||||
db.ExecuteNonQuery(sqlCmd.ToString)
|
||||
|
||||
|
||||
'Sn总表更新条码测试记录存储过程-有MO
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append($"Drop Procedure If Exists `{dbName}`.`UpdateSnListBarcode_MO`;" & vbCrLf)
|
||||
|
||||
'2023-06-07 add MO'''''''''''
|
||||
'sqlCmd.Append($"Create Procedure `{dbName}`.`UpdateSnListBarcode`(in code varchar(32),in snOrder int,in startTime datetime,in result int,in a1String varchar(254))," & vbCrLf)
|
||||
sqlCmd.Append($"Create Procedure `{dbName}`.`UpdateSnListBarcode_MO`(in code varchar(32),in snOrder int,in startTime datetime,in result int,in a1String varchar(254),in MoId int)" & vbCrLf)
|
||||
''''''''''''''''''''''''''''''
|
||||
sqlCmd.Append("begin " & vbCrLf)
|
||||
sqlCmd.Append("DECLARE msg int default -1; " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('select S',snOrder,',count(1) into @l_tm,@l_ct from `TBL_SnList` where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("if @l_ct = 0 then" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 0;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("if @l_tm is null then" & vbCrLf)
|
||||
sqlCmd.Append("if char_length(a1String) = 0 then " & vbCrLf)
|
||||
'2023-06-07 add MO'''''''''''
|
||||
'sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,'''');" & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set OrderInternalID=''',MoId,''',S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,'''');" & vbCrLf)
|
||||
''''''''''''''''''''''''''''''
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
'2023-06-07 add MO'''''''''''
|
||||
'sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set OrderInternalID=''',MoId,''',S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
''''''''''''''''''''''''''''''
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 1;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("if startTime >= @l_tm then" & vbCrLf)
|
||||
sqlCmd.Append("if char_length(a1String) = 0 then " & vbCrLf)
|
||||
'2023-06-07 add MO'''''''''''
|
||||
'sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set OrderInternalID=''',MoId,''',S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
''''''''''''''''''''''''''''''
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
'2023-06-07 add MO'''''''''''
|
||||
'sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set OrderInternalID=''',MoId,''',S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
''''''''''''''''''''''''''''''
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 1;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 2;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("select msg;" & vbCrLf)
|
||||
sqlCmd.Append("end " & vbCrLf)
|
||||
db.ExecuteNonQuery(sqlCmd.ToString)
|
||||
|
||||
'Sn总表更新条码测试记录存储过程:无MO
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append($"Drop Procedure If Exists `{dbName}`.`UpdateSnListBarcode`;" & vbCrLf)
|
||||
|
||||
sqlCmd.Append($"Create Procedure `{dbName}`.`UpdateSnListBarcode`(in code varchar(32),in snOrder int,in startTime datetime,in result int,in a1String varchar(254))" & vbCrLf)
|
||||
sqlCmd.Append("begin " & vbCrLf)
|
||||
sqlCmd.Append("DECLARE msg int default -1; " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('select S',snOrder,',count(1) into @l_tm,@l_ct from `TBL_SnList` where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("if @l_ct = 0 then" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 0;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("if @l_tm is null then" & vbCrLf)
|
||||
sqlCmd.Append("if char_length(a1String) = 0 then " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,'''');" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 1;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("if startTime >= @l_tm then" & vbCrLf)
|
||||
sqlCmd.Append("if char_length(a1String) = 0 then " & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("set @cmd = Concat('update `TBL_SnList` set S',snOrder,' = ''',startTime,''',Result',snOrder, ' = ',result,',AssemblySn = ''',a1String,''',AssemblyTime =''',startTime,''' where `BarCode` = ''',code,''''); " & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("PREPARE pre FROM @cmd;" & vbCrLf)
|
||||
sqlCmd.Append("EXECUTE pre;" & vbCrLf)
|
||||
sqlCmd.Append("deallocate prepare pre;" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 1;" & vbCrLf)
|
||||
sqlCmd.Append("else" & vbCrLf)
|
||||
sqlCmd.Append("set msg = 2;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("end if;" & vbCrLf)
|
||||
sqlCmd.Append("select msg;" & vbCrLf)
|
||||
sqlCmd.Append("end " & vbCrLf)
|
||||
db.ExecuteNonQuery(sqlCmd.ToString)
|
||||
End Sub
|
||||
|
||||
Private Sub CreateDatabase(db As DbExecutor, dbName As String)
|
||||
Dim sqlCmd As New StringBuilder
|
||||
Dim tableName As String
|
||||
|
||||
'创建数据库
|
||||
UpdateInstallTip(55, $"创建数据库中...")
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append($"CREATE DATABASE IF NOT EXISTS {dbName};")
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(60, $"创建数据库完成!")
|
||||
|
||||
'创建数据库同步表
|
||||
UpdateInstallTip(65, $"创建同步表...")
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append(SyncListTable.CreateTableString(dbName, db.DatabaseType))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(65, $"创建同步表完成!")
|
||||
|
||||
'创建数据库日志表
|
||||
UpdateInstallTip(65, $"创建日志表...")
|
||||
sqlCmd.Clear()
|
||||
sqlCmd.Append(LogTable.CreateTableString(dbName, db.DatabaseType))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(65, $"创建日志表完成!")
|
||||
|
||||
'创建项目类型表
|
||||
UpdateInstallTip(65, $"创建项目类型表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = ProductTypesTable.TableName
|
||||
sqlCmd.Append(ProductTypesTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(65, $"创建项目类型表完成!")
|
||||
|
||||
'创建项目表
|
||||
UpdateInstallTip(70, $"创建项目表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = ProjectTable.TableName
|
||||
sqlCmd.Append(ProjectTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(70, $"创建项目表完成!")
|
||||
|
||||
'创建站位表
|
||||
UpdateInstallTip(70, $"创建站位表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = StationListTable.TableName
|
||||
sqlCmd.Append(StationListTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(70, $"创建站位表完成!")
|
||||
|
||||
'创建站包发布历史表
|
||||
UpdateInstallTip(70, $"创建站包发布历史表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = StationPacketReleaseLogTable.TableName
|
||||
sqlCmd.Append(StationPacketReleaseLogTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(70, $"创建站包发布历史表完成!")
|
||||
|
||||
'创建内部单表
|
||||
UpdateInstallTip(70, $"创建内部单表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = OrderInternalTable.TableName
|
||||
sqlCmd.Append(OrderInternalTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(70, $"创建内部单表完成!")
|
||||
|
||||
'创建订单表
|
||||
UpdateInstallTip(70, $"创建订单表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = OrdersTable.TableName
|
||||
sqlCmd.Append(OrdersTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(70, $"创建订单表完成!")
|
||||
|
||||
'创建产线表
|
||||
UpdateInstallTip(75, $"创建产线表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = ProductionLineTable.TableName
|
||||
sqlCmd.Append(ProductionLineTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建产线表完成!")
|
||||
|
||||
'创建生产计划表
|
||||
UpdateInstallTip(75, $"创建生产计划表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = ProductionPlanTable.TableName
|
||||
sqlCmd.Append(ProductionPlanTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建生产计划表完成!")
|
||||
|
||||
'创建产商客户表
|
||||
UpdateInstallTip(75, $"创建产商客户表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = VendorCustomerTable.TableName
|
||||
sqlCmd.Append(VendorCustomerTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建产商客户表完成!")
|
||||
|
||||
'创建序号总表
|
||||
UpdateInstallTip(75, $"创建序号总表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = SnListTable.TableName
|
||||
sqlCmd.Append(SnListTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName, "new"))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建序号总表完成!")
|
||||
|
||||
'创建序号关联信息总表
|
||||
UpdateInstallTip(75, $"创建序号关联信息总表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = ImportInfoTable.TableName
|
||||
sqlCmd.Append(ImportInfoTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName, "new"))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建序号关联信息总表完成!")
|
||||
|
||||
|
||||
'创建维修原因类型表
|
||||
UpdateInstallTip(75, $"创建维修原因类型表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RepairTypesTable.TableName
|
||||
sqlCmd.Append(RepairTypesTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建维修原因类型表完成!")
|
||||
|
||||
'创建维修原因表
|
||||
UpdateInstallTip(75, $"创建维修原因表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RepairReasonTable.TableName
|
||||
sqlCmd.Append(RepairReasonTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建维修原因表完成!")
|
||||
|
||||
'创建报修不良代码表
|
||||
UpdateInstallTip(75, $"创建报修不良代码表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RejectsExplainTable.TableName
|
||||
sqlCmd.Append(RejectsExplainTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建报修不良代码完成!")
|
||||
|
||||
'创建报修记录表
|
||||
UpdateInstallTip(75, $"创建报修记录表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RepairRequestTable.TableName
|
||||
sqlCmd.Append(RepairRequestTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建报修记录表完成!")
|
||||
|
||||
'创建维修结果表
|
||||
UpdateInstallTip(75, $"创建维修结果表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RepairResultTable.TableName
|
||||
sqlCmd.Append(RepairResultTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建维修结果表完成!")
|
||||
|
||||
|
||||
'创建维修记录表
|
||||
UpdateInstallTip(75, $"创建维修记录表...")
|
||||
sqlCmd.Clear()
|
||||
tableName = RepairLogTable.TableName
|
||||
sqlCmd.Append(RepairLogTable.CreateTableString(dbName, db.DatabaseType))
|
||||
sqlCmd.Append(SyncListTable.SyncTrigger(dbName, tableName))
|
||||
sqlCmd.Append(SyncListTable.AddSyncTableString(dbName, tableName))
|
||||
db.ExecuteNonQuery(sqlCmd.ToString())
|
||||
UpdateInstallTip(75, $"创建维修记录表完成!")
|
||||
End Sub
|
||||
|
||||
Private Sub CreateVendorTables(lic As License)
|
||||
'生成对应数据库的对应数据表
|
||||
Dim connType As DbExecutor.DbTypeEnum = DbExecutor.DbTypeEnum.Mysql
|
||||
Dim connString As String = $"Server = {lic.MysqlServer};Port = {lic.MysqlPort};User id = {lic.MysqlUserID};Password = {lic.MysqlPassword};SslMode = none;Allow User Variables = True;"
|
||||
|
||||
UpdateInstallTip(45, $"连接数据库中...")
|
||||
Using db As New DbExecutor(connType, connString)
|
||||
db.Open()
|
||||
|
||||
UpdateInstallTip(50, $"连接数据库完成!")
|
||||
|
||||
UpdateInstallTip(51, $"创建客户数据库中...")
|
||||
Try
|
||||
CreateDatabase(db, lic.MysqlDatabase)
|
||||
UpdateInstallTip(80, $"创建客户数据库完成!")
|
||||
Catch ex As Exception
|
||||
Throw New Exception($"创建客户数据库失败,{ex.Message}")
|
||||
End Try
|
||||
|
||||
Try
|
||||
CreateProcedure(db, lic.MysqlDatabase)
|
||||
Catch ex As Exception
|
||||
Throw New Exception($"创建客户数据库存储过程失败,{ex.Message}")
|
||||
End Try
|
||||
|
||||
UpdateInstallTip(81, $"注册客户中...")
|
||||
Try
|
||||
UpdateInstallTip(81, $"注册客户公司中...")
|
||||
UpdateCompanyTable(db, lic.PublicDb, lic.VendorName)
|
||||
UpdateInstallTip(85, $"注册客户公司中!")
|
||||
|
||||
UpdateInstallTip(86, $"注册客户数据库中...")
|
||||
UpdateDatabaseTable(db, lic.PublicDb, lic.VendorName, lic.MysqlDatabase, lic.MysqlUserID, lic.MysqlPassword)
|
||||
UpdateInstallTip(90, $"注册客户数据库完成!")
|
||||
Catch ex As Exception
|
||||
Throw New Exception($"注册客户失败,{ex.Message}")
|
||||
End Try
|
||||
|
||||
db.Close()
|
||||
End Using
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub UpdateFormByLicense(lic As License)
|
||||
TxtVendorName.Text = lic.VendorName
|
||||
DtpExpirationDate.Value = Date.Parse(lic.ExpirationDate)
|
||||
|
||||
TxtRemoteServer.Text = lic.MysqlServer
|
||||
NudRemotePort.Value = CInt(lic.MysqlPort)
|
||||
TxtRemoteUser.Text = lic.MysqlUserID
|
||||
TxtRemotePwd.Text = lic.MysqlPassword
|
||||
TxtRemotePrivateDb.Text = lic.MysqlDatabase
|
||||
TxtRemotePublicDb.Text = lic.PublicDb
|
||||
|
||||
TxtLocalFileName.Text = lic.SqliteName
|
||||
TxtLocalPwd.Text = lic.SqlitePassword
|
||||
|
||||
TxtFtpHost.Text = lic.FtpHost
|
||||
NudFtpPort.Value = CInt(lic.FtpPort)
|
||||
TxtFtpUser.Text = lic.FtpUser
|
||||
TxtFtpPwd.Text = lic.FtpPwd
|
||||
|
||||
TxtMac.Text = lic.Mac
|
||||
TxtRemard.Text = lic.Remark
|
||||
End Sub
|
||||
|
||||
|
||||
|
||||
Private Sub BtnLoad_Click(sender As Object, e As EventArgs) Handles BtnLoad.Click
|
||||
Dim licensePath As String
|
||||
Using openDlg As New OpenFileDialog
|
||||
openDlg.Title = $"请选择模板鉴权License文件的路径"
|
||||
openDlg.Filter = $"License文件(*.dat)|*.dat"
|
||||
If openDlg.ShowDialog() <> DialogResult.OK Then Return
|
||||
licensePath = openDlg.FileName
|
||||
End Using
|
||||
|
||||
Try
|
||||
Dim lic As New License(licensePath)
|
||||
UpdateFormByLicense(lic)
|
||||
Catch ex As Exception
|
||||
MsgBox($"Load license file error:{ex.Message}")
|
||||
End Try
|
||||
|
||||
End Sub
|
||||
|
||||
|
||||
Private Sub UpdateProgressBar(value As Integer)
|
||||
TsPrgInstall.Value = value
|
||||
End Sub
|
||||
|
||||
Private Sub UpdateInstallLog(value As Integer, log As String)
|
||||
If value = 0 Then RtxTip.Clear()
|
||||
|
||||
RtxTip.AppendText($"[{value,3}%]-[{Now}]{log}{vbCrLf}")
|
||||
RtxTip.ScrollToCaret()
|
||||
End Sub
|
||||
|
||||
Private Sub UpdateInstallTip(value As Integer, str As String)
|
||||
UpdateProgressBar(value)
|
||||
|
||||
UpdateInstallLog(value, str)
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
|
||||
Text = $"{Application.ProductName} {Application.ProductVersion}"
|
||||
|
||||
DtpExpirationDate.Value = Now.AddMonths(6)
|
||||
End Sub
|
||||
|
||||
Private Sub GroupBox2_Enter(sender As Object, e As EventArgs) Handles GroupBox2.Enter
|
||||
|
||||
End Sub
|
||||
End Class
|
||||
Reference in New Issue
Block a user