diff --git a/Product_Manager/MainForm.vb b/Product_Manager/MainForm.vb index 708dfe4..b715df1 100644 --- a/Product_Manager/MainForm.vb +++ b/Product_Manager/MainForm.vb @@ -5,6 +5,7 @@ Imports Microsoft Imports System.Runtime.Remoting Imports System.Windows.Forms.VisualStyles.VisualStyleElement.TaskbarClock Imports Mysqlx +Imports Mysqlx.XDevAPI Public Class MainForm Public Const FormVersion As String = "2.0.0" @@ -462,8 +463,8 @@ End_Finish: GoTo FAIL_Finish End If - Dim ModelCode As Int16 = ModelSetting() - Dim TypeCode As Int16 = TypeSetting() + Dim ModelCode As ModelList = ModelSetting() + Dim TypeCode As TypeList = TypeSetting() If ModelCode = ModelList.MAX_Model Or TypeCode = TypeList.MAXType Then MsgBox("존재하지 않는 모델 및 타입 코드입니다. 체크된 내용을 확인하여 주십시오.", vbCritical, FormName) @@ -561,11 +562,10 @@ End_Finish: GoTo FAIL_Finish End If - SerialValue = ModelCode & TypeCode & nudIfYear.Text & MonthParsing & Mid(SerialValue, 4, 3) & Mid(SerialValue, 1, 3) - txbIfNumber.Text = SerialValue + txbIfNumber.Text = CInt(ModelCode) & CInt(TypeCode) & nudIfYear.Text & MonthParsing & Mid(SerialValue, 4, 3) & Mid(SerialValue, 1, 3) tmpCmdMessage = "cartsn" - cmdMessage = "[sb" & tmpCmdMessage & " " & SerialValue & "]" + cmdMessage = "[sb" & tmpCmdMessage & " " & txbIfNumber.Text & "]" If SendData(cmdMessage) Then StageCnt = ErrorList.SendError @@ -579,6 +579,36 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + Dim DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Product_SN = '" & txbIfNumber.Text & "', " & + "Ct_Manufacture_Name = '" & txbIfCode.Text & "', " & + "Ct_Manufacture_Year = '" & nudIfYear.Value & "', " & + "Ct_Manufacture_Month = '" & nudIfMonth.Value & "', " & + "Ct_SN = '" & SerialValue & "', " & + "Ct_Model = '" & ModelCode.ToString & "', " & + "Ct_Type = '" & TypeCode.ToString & "', " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + If DataResult <> "success" Then StageCnt = ErrorList.ResultError GoTo FAIL_Finish @@ -654,12 +684,22 @@ End_Finish: End If txbIfNumber.Text = ModelCode & Mid(SerialValue, 1, 4) & Mid(SerialValue, 8, 3) & Mid(SerialValue, 5, 3) - Dim cartridgeSerial = Mid(SerialValue, 5, 3) & Mid(SerialValue, 8, 3) - '여기에 Update TD 번호 조건 걸어서 넣기' - ' 변수 정리하고 어떤 칼럼인지 정리 - Dim DBCmd = "UPDATE " & UseCartridgeTbl & "SET Product_SN = '" & txbIfNumber.Text & "', Ct_Manufacture_Name = '" & txbIfCode.Text & "', Ct_Manufacture_Year = '" & nudIfYear.Value & "', Ct_Manufacture_Month = '" & nudIfMonth.Value & "', Ct_SN = '" & cartridgeSerial & "', Ct_Model = 'MAXIMUM', Ct_Type = 'SET', Ct_Remain_ShotCnt = 0 WHERE PV_SN = '" & TDNameStr & "'" + If ckbDBUse.Checked = True Then + Dim cartridgeSerial = Mid(SerialValue, 5, 3) & Mid(SerialValue, 8, 3) + Dim DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Product_SN = '" & txbIfNumber.Text & "', " & + "Ct_Manufacture_Name = '" & txbIfCode.Text & "', " & + "Ct_Manufacture_Year = '" & nudIfYear.Value & "', " & + "Ct_Manufacture_Month = '" & nudIfMonth.Value & "', " & + "Ct_SN = '" & cartridgeSerial & "', " & + "Ct_Model = 'MAXIMUM', " & + "Ct_Type = 'SET' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If txbInfoBox.Text = "SUCCESS" txbInfoBox.BackColor = Color.Green @@ -732,6 +772,23 @@ End_Finish: txbIfNumber.Text = ModelCode & Mid(SerialValue, 1, 4) & Mid(SerialValue, 8, 3) & Mid(SerialValue, 5, 3) + If ckbDBUse.Checked = True Then + Dim cartridgeSerial = Mid(SerialValue, 5, 3) & Mid(SerialValue, 8, 3) + + + Dim DBCmd = "UPDATE " & NonCartridgeTbl & " SET " & + "Product_SN = '" & txbIfNumber.Text & "', " & + "Ct_Manufacture_Name = '" & txbIfCode.Text & "', " & + "Ct_Manufacture_Year = '" & nudIfYear.Value & "', " & + "Ct_Manufacture_Month = '" & nudIfMonth.Value & "', " & + "Ct_SN = '" & cartridgeSerial & "', " & + "Ct_Model = 'ALTO', " & + "Ct_Type = 'SET' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbInfoBox.Text = "SUCCESS" txbInfoBox.BackColor = Color.Green GoTo End_Finish @@ -803,6 +860,22 @@ End_Finish: txbIfNumber.Text = ModelCode & Mid(SerialValue, 1, 4) & Mid(SerialValue, 8, 3) & Mid(SerialValue, 5, 3) + If ckbDBUse.Checked = True Then + Dim cartridgeSerial = Mid(SerialValue, 5, 3) & Mid(SerialValue, 8, 3) + + Dim DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Product_SN = '" & txbIfNumber.Text & "', " & + "Ct_Manufacture_Name = '" & txbIfCode.Text & "', " & + "Ct_Manufacture_Year = '" & nudIfYear.Value & "', " & + "Ct_Manufacture_Month = '" & nudIfMonth.Value & "', " & + "Ct_SN = '" & cartridgeSerial & "', " & + "Ct_Model = 'EFFECT', " & + "Ct_Type = 'SET' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbInfoBox.Text = "SUCCESS" txbInfoBox.BackColor = Color.Green GoTo End_Finish @@ -1484,8 +1557,10 @@ End_Finish: Select Case SelectModel Case ModeList.DUALSONIC DUALSONIC_AreaWriteFunc() - Case ModeList.MAXIMUM, ModeList.ALTO, ModeList.EFFECT + Case ModeList.MAXIMUM, ModeList.EFFECT MAXIMUM_AreaWriteFunc() + Case ModeList.ALTO + ALTO_AreaWriteFunc() Case Else MsgBox("잘못된 경로입니다.", vbCritical, FormName) End Select @@ -1548,6 +1623,31 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Abroad = '" & txbAbroad.Text.Trim() & "', " & + "Ct_Agency = '" & txbAgency.Text.Trim() & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbAreaBox.Text = "SUCCESS" txbAreaBox.BackColor = Color.Green GoTo End_Finish @@ -1566,6 +1666,7 @@ End_Finish: Private Sub MAXIMUM_AreaWriteFunc() Dim StageCnt As Int16 = ErrorList.NonError + Try If AreaWriteStart() Then StageCnt = ErrorList.DataError @@ -1574,6 +1675,7 @@ End_Finish: Dim ResultData As String = ReadInfo() + If ResultData = Str(ErrorList.SendError) Or ResultData = Str(ErrorList.ReceiveError) Then StageCnt = ResultData GoTo FAIL_Finish @@ -1592,6 +1694,102 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Abroad = '" & txbAbroad.Text.Trim() & "', " & + "Ct_Agency = '" & txbAgency.Text.Trim() & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + + txbAreaBox.Text = "SUCCESS" + txbAreaBox.BackColor = Color.Green + GoTo End_Finish + + Catch ex As Exception + MsgBox("입력 진행 도중 에러 발생!" & vbCrLf & ex.Message, vbCritical, FormName) + GoTo FAIL_Finish + End Try + +FAIL_Finish: + txbAreaBox.Text = "ERROR" + Str(StageCnt) + txbAreaBox.BackColor = Color.Red +End_Finish: + txbAreaBox.Refresh() + End Sub + + Private Sub ALTO_AreaWriteFunc() + Dim StageCnt As Int16 = ErrorList.NonError + + Try + If AreaWriteStart() Then + StageCnt = ErrorList.DataError + GoTo FAIL_Finish + End If + + Dim ResultData As String = ReadInfo() + + + If ResultData = Str(ErrorList.SendError) Or ResultData = Str(ErrorList.ReceiveError) Then + StageCnt = ResultData + GoTo FAIL_Finish + End If + + Dim Data1 As String = Mid(ResultData, 1, InStr(ResultData, ",") - 1) + ResultData = Mid(ResultData, InStr(ResultData, ",") + 1, ResultData.Length) + Dim Data2 As String = Mid(ResultData, 1, InStr(ResultData, ",") - 1) + ResultData = Mid(ResultData, InStr(ResultData, ",") + 1, ResultData.Length) + Dim Data3 As String = Mid(ResultData, 1, InStr(ResultData, ",") - 1) + + ResultData = MAXInfoWrite(Data1, Data2, Data3, txbAbroad.Text, txbAgency.Text) + + If ResultData = ErrorList.SendError Or ResultData = ErrorList.ReceiveError Then + StageCnt = ResultData + GoTo FAIL_Finish + End If + + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = NonTDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & NonCartridgeTbl & " SET " & + "Ct_Abroad = '" & txbAbroad.Text.Trim() & "', " & + "Ct_Agency = '" & txbAgency.Text.Trim() & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbAreaBox.Text = "SUCCESS" txbAreaBox.BackColor = Color.Green GoTo End_Finish @@ -2012,6 +2210,30 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Frequency = '" & txbFreq.Text & "', " & + "Ct_Power = '" & CSng(txbPower.Text) & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If txbFPBox.Text = "SUCCESS" txbFPBox.BackColor = Color.Green @@ -2042,6 +2264,31 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Frequency = '" & txbFreq.Text & "', " & + "Ct_Power = '" & CSng(txbPower.Text) & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbFPBox.Text = "SUCCESS" txbFPBox.BackColor = Color.Green GoTo End_Finish @@ -2259,6 +2506,30 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Motor_Lv = '" & txbMotor.Text & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbMtBox.Text = "SUCCESS" txbMtBox.BackColor = Color.Green GoTo End_Finish @@ -2508,6 +2779,31 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Remain_ShotCnt = '" & txbShot.Text & "' " & + "Ct_Max_ShotCnt = '" & txbMaxShot.Text & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbShotBox.Text = "SUCCESS" txbShotBox.BackColor = Color.Green GoTo End_Finish @@ -2537,6 +2833,30 @@ End_Finish: GoTo FAIL_Finish End If + If ckbDBUse.Checked = True Then + Dim TDNameStr = TDNameLoad() + + If TDNameStr = Str(ErrorList.SendError) Or TDNameStr = Str(ErrorList.ReceiveError) Then + MsgBox("TD 시리얼 번호를 확인할 수 없습니다. 저장하고자 하는 Serial 번호를 먼저 입력하여 주십시오.", vbExclamation, FormName) + StageCnt = TDNameStr + GoTo FAIL_Finish + End If + + Dim DBExist As Boolean = TDNameDBLoad(TDNameStr) + + If DBExist = False Then + MsgBox("TD 시리얼 번호가 데이터베이스에 등록되어 있지 않습니다.", vbCritical, FormName) + StageCnt = ErrorList.ReceiveError + GoTo FAIL_Finish + End If + + DBCmd = "UPDATE " & UseCartridgeTbl & " SET " & + "Ct_Remain_ShotCnt = '" & txbShot.Text & "' " & + "WHERE PV_SN = '" & TDNameStr & "'" + + DBCommand(DBCmd) + End If + txbShotBox.Text = "SUCCESS" txbShotBox.BackColor = Color.Green GoTo End_Finish