1.버전 3.0.7
2.기존 올리브영만 보급형 적용 -> 모든 보급형 모델 적용 3. 보급형 단독 / 보급형+구성품 / 보급형 +일반 모델 포장 적용
This commit is contained in:
parent
d510ba1d50
commit
ef6602d000
1548
OrderPackingProcessor/mainForm.Designer.vb
generated
1548
OrderPackingProcessor/mainForm.Designer.vb
generated
File diff suppressed because it is too large
Load Diff
@ -8,7 +8,7 @@ Imports Newtonsoft.Json.Linq
|
||||
|
||||
Public Class mainForm
|
||||
Public projectName As String = "OrderPackingProcessor Ver."
|
||||
Public projectVer As String = "3.0.4"
|
||||
Public projectVer As String = "3.0.7"
|
||||
|
||||
Private apiItemOutURL As String = "item-outflows/page"
|
||||
|
||||
@ -155,6 +155,7 @@ Public Class mainForm
|
||||
''스캔 바코드 문자 길이
|
||||
Private Const oldProdCodeLength As Int16 = 12 '12자리 제품시리얼번호
|
||||
Private Const newProdCodeLength As Int16 = 16 '16자리 제품시리얼번호
|
||||
Private Const lowProdCodeLength As Int16 = 13 '보급형모델 88코드
|
||||
Private Const comCodeLength As Int16 = 8
|
||||
Private Const stateLength As Int16 = 14
|
||||
Private Const serialCount As Int16 = 3
|
||||
@ -168,7 +169,8 @@ Public Class mainForm
|
||||
Private ScanArray(,) As String
|
||||
Private scanCode() As String
|
||||
|
||||
Private setFace, setEye As String
|
||||
Private setFace As String = "0"
|
||||
Private setEye As String = "0"
|
||||
|
||||
''리스트 텍스트박스 위치
|
||||
Const prodInfoStartCol As Int16 = 5
|
||||
@ -245,9 +247,10 @@ Public Class mainForm
|
||||
End Enum
|
||||
Private defaultData(defaultList.refer) As String
|
||||
|
||||
''올리브영 88코드
|
||||
Private olivYoungList As New Dictionary(Of String, String) From {{"P001-OY001A", "8809595041540"}, {"P001-OY001B", "8809595041533"}}
|
||||
|
||||
''보급형 88코드
|
||||
Private lowProdList As New Dictionary(Of String, String) ''key:88 vlaue: itemcode
|
||||
''보급형 기기 포함
|
||||
Private lowProdContain As Boolean = False
|
||||
'' 세트코드
|
||||
Private setCodeUse As Boolean = False ''세트 코드 번호를 사용했냐 안했냐 구분
|
||||
Private Const setCodeSort As String = "PK"
|
||||
@ -295,6 +298,7 @@ Public Class mainForm
|
||||
varDataSetting()
|
||||
dgvRefresh()
|
||||
fullLoad(sender, e)
|
||||
loadLowProdBarcode()
|
||||
If rdbMode2.Checked = True Then
|
||||
loadConfig(saveList.lastCount)
|
||||
End If
|
||||
@ -311,7 +315,18 @@ Public Class mainForm
|
||||
Me.Size = New Size(1920, 1080)
|
||||
'Me.WindowState = FormWindowState.Maximized
|
||||
End Sub
|
||||
|
||||
Private Sub loadLowProdBarcode() '' 보급형 88 코드 가지고 오기
|
||||
Dim queryFlag = 0
|
||||
Dim cmd = "SELECT 88_Code,itemCode FROM " & applyPlistDB & " WHERE 88_Code IS NOT NULL"
|
||||
If DBQueryReader(cmd) Then
|
||||
For i = 0 To sqlDataQuery.Length - 1
|
||||
If i Mod 2 = 1 Then
|
||||
lowProdList.Add(sqlDataQuery(queryFlag - 1), sqlDataQuery(queryFlag))
|
||||
End If
|
||||
queryFlag += 1
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
Private Sub countView()
|
||||
If loadLocalFile() Then
|
||||
countOut()
|
||||
@ -763,7 +778,7 @@ Public Class mainForm
|
||||
Return False
|
||||
Case "CHECKERROR"
|
||||
errorOut("등록오류")
|
||||
errorGen("올리브영 상품이 아닙니다. 올리브영 사용 여부를 확인해 주십시오.")
|
||||
errorGen("보급형 상품이 아닙니다. 보급형 사용 여부를 해제해 주십시오.")
|
||||
Return False
|
||||
Case Else
|
||||
errorOut("동작불량")
|
||||
@ -923,7 +938,7 @@ Public Class mainForm
|
||||
End If
|
||||
|
||||
If packingRun() Then
|
||||
If playCode.Length < stateLength Or playCode.Length = newProdCodeLength Or (oybtn.Checked And playCode.Length = 13) Then
|
||||
If playCode.Length < stateLength Or playCode.Length = newProdCodeLength Then
|
||||
If nowFullCount = tgtFullCount Then
|
||||
If chbUseBarcode.Checked = True Then
|
||||
saveStart()
|
||||
@ -1540,10 +1555,12 @@ Public Class mainForm
|
||||
Return False
|
||||
Case "CHECKERROR"
|
||||
errorOut("등록오류")
|
||||
errorGen("올리브영 상품이 아닙니다. 올리브영 사용 여부를 확인해 주십시오.")
|
||||
errorGen("보급형 상품이 아닙니다. 보급형 사용을 해제해 주십시오.")
|
||||
Return False
|
||||
Case "UNCHECKERROR"
|
||||
errorOut("등록오류")
|
||||
errorGen("올리브영 사용 여부를 확인해 주십시오.")
|
||||
errorGen("보급형 상품입니다. 보급형 사용 여부를 확인해 주십시오.")
|
||||
Return False
|
||||
Case Else
|
||||
errorOut("등록오류")
|
||||
errorGen("잘못된 접근입니다. 관리자에게 문의하여 주십시오.")
|
||||
@ -1854,7 +1871,7 @@ Public Class mainForm
|
||||
End Function
|
||||
|
||||
Private Function serialDupCheck() As Boolean
|
||||
If oybtn.Checked Then
|
||||
If oybtn.Checked And playCode.Length = lowProdCodeLength Then
|
||||
Return False
|
||||
End If
|
||||
For i = 0 To prodArray.GetLength(1) - 1
|
||||
@ -1870,7 +1887,7 @@ Public Class mainForm
|
||||
|
||||
Private Function serialPackCompare() As Boolean
|
||||
Dim commandStr As String
|
||||
If oybtn.Checked Then
|
||||
If oybtn.Checked And playCode.Length = lowProdCodeLength Then
|
||||
Return True
|
||||
End If
|
||||
|
||||
@ -2060,14 +2077,9 @@ Public Class mainForm
|
||||
|
||||
Private Function shotComparison() As Boolean
|
||||
Dim runCount As Int32 = 0
|
||||
setFace = 0
|
||||
setEye = 0
|
||||
Dim faceCShot As Int32 = 0
|
||||
Dim eyeCshot As Int32 = 0
|
||||
If oybtn.Checked And setInfo(setInfoList.topSerial) = Nothing Then
|
||||
setFace = "0"
|
||||
setEye = "0"
|
||||
ElseIf setInfo(setInfoList.topSerial) <> "NULL" And setInfo(setInfoList.midSerial) <> "NULL" And setInfo(setInfoList.botSerial) <> "NULL" Then
|
||||
If setInfo(setInfoList.topSerial) <> "NULL" And setInfo(setInfoList.midSerial) <> "NULL" And setInfo(setInfoList.botSerial) <> "NULL" Then
|
||||
setFace = setInfo(setInfoList.midshot)
|
||||
setEye = setInfo(setInfoList.botshot)
|
||||
Else
|
||||
@ -2890,7 +2902,7 @@ Public Class mainForm
|
||||
strData = File.ReadAllText(fileName, Encoding.UTF8)
|
||||
|
||||
If strData = vbCrLf Or strData = Nothing Or strData = "" Then
|
||||
strData = startForm & vbCrLf & saveData & vbCrLf
|
||||
strData = StartForm & vbCrLf & saveData & vbCrLf
|
||||
|
||||
Else
|
||||
If UBound(Split(strData, saveDate)) > 0 Then
|
||||
@ -2902,7 +2914,7 @@ Public Class mainForm
|
||||
|
||||
End If
|
||||
Else
|
||||
strData = startForm & vbCrLf & saveData & vbCrLf
|
||||
strData = StartForm & vbCrLf & saveData & vbCrLf
|
||||
End If
|
||||
|
||||
File.WriteAllText(fileName, strData, Encoding.UTF8)
|
||||
@ -3454,10 +3466,6 @@ Public Class mainForm
|
||||
'End Function
|
||||
|
||||
Private Function dbPackNumCompare(choiceNum As String) As Boolean
|
||||
If oybtn.Checked Then
|
||||
Return False
|
||||
End If
|
||||
|
||||
DBCmd = "SELECT COUNT(PackingCode) FROM " & applySalesDB & " WHERE PackingCode = '" & choiceNum & "'"
|
||||
|
||||
If Val(DBQueryScalar(DBCmd)) > 0 Then
|
||||
@ -3552,7 +3560,7 @@ Public Class mainForm
|
||||
If choiceData = Nothing Then
|
||||
Return orderCode
|
||||
Else
|
||||
If choiceData.Length = oldProdCodeLength Or choiceData.Length = newProdCodeLength Or oybtn.Checked Then
|
||||
If choiceData.Length = oldProdCodeLength Or choiceData.Length = newProdCodeLength Then
|
||||
Return choiceData
|
||||
Else
|
||||
Return orderCode
|
||||
@ -3681,7 +3689,7 @@ Public Class mainForm
|
||||
If prodArray(itemCode.serialNum, i) = Nothing Then
|
||||
prodArray(itemCode.serialNum, i) = playCode
|
||||
Else
|
||||
If Not olivYoungList.Any(Function(v) v.Value = playCode) Then
|
||||
If Not (oybtn.Checked And playCode.Length = lowProdCodeLength) Then
|
||||
prodArray(itemCode.serialNum, i) = prodArray(itemCode.serialNum, i) & "/" & playCode
|
||||
End If
|
||||
End If
|
||||
@ -3748,16 +3756,14 @@ Public Class mainForm
|
||||
End If
|
||||
Else
|
||||
If orderSwitch = True Then
|
||||
If olivYoungList.Any(Function(key) key.Value = playCode) Then
|
||||
If lowProdList.ContainsKey(playCode) Then
|
||||
If oybtn.Checked Then
|
||||
Return "PRODSCAN"
|
||||
Else
|
||||
Return "UNCHECKERROR"
|
||||
End If
|
||||
Else
|
||||
If oybtn.Checked Then
|
||||
Return "CHECKERROR"
|
||||
End If
|
||||
ElseIf oybtn.Checked And lowProdContain = False Then
|
||||
Return "CHECKERROR"
|
||||
End If
|
||||
|
||||
If playCode.Length = oldProdCodeLength Or playCode.Length = newProdCodeLength Then
|
||||
@ -3782,15 +3788,17 @@ Public Class mainForm
|
||||
End Function
|
||||
|
||||
Private Function searchData() As Boolean
|
||||
If oybtn.Checked And playCode.Length = lowProdCodeLength Then
|
||||
For i = 0 To setInfoList.prodCode
|
||||
setInfo(i) = "NULL"
|
||||
Next
|
||||
Return True
|
||||
End If
|
||||
Const serialShot As Int16 = 3 '' 시리얼 번호와 샷 수 enum 의 차이 / 시리얼 번호 null 일 때 샷 수에 null 값 집어 넣기 위해 사용
|
||||
|
||||
For i = 0 To setInfoList.prodCode
|
||||
setInfo(i) = Nothing
|
||||
Next
|
||||
If oybtn.Checked Then
|
||||
setInfoOut()
|
||||
Return True
|
||||
End If
|
||||
|
||||
If serialSearch() Then
|
||||
|
||||
@ -3993,7 +4001,7 @@ Public Class mainForm
|
||||
|
||||
Private Function prodCodeSearch() As Boolean
|
||||
Try
|
||||
If Not oybtn.Checked Then
|
||||
If Not (oybtn.Checked And playCode.Length = lowProdCodeLength) Then
|
||||
If modelNum = Nothing Or typeNum = Nothing Then
|
||||
errorOut("등록오류")
|
||||
errorGen("해당 시리얼 번호의 모델과 타입을 알 수 없습니다.")
|
||||
@ -4009,10 +4017,8 @@ Public Class mainForm
|
||||
ElseIf playCode.Length = newProdCodeLength Then '16자리 제품시리얼번호
|
||||
codeColor = Mid(playCode, 3, 1)
|
||||
End If
|
||||
If oybtn.Checked Then
|
||||
Dim itemCode = olivYoungList.FirstOrDefault(Function(key) key.Value = playCode)
|
||||
codeColor = itemCode.Key
|
||||
DBCmd = "SELECT ItemCode,ProdCode,FaceShot,EyeShot FROM " & applyPlistDB & " WHERE itemCode ='" & codeColor & "'"
|
||||
If oybtn.Checked And playCode.Length = lowProdCodeLength Then
|
||||
DBCmd = "SELECT ItemCode,ProdCode,FaceShot,EyeShot FROM " & applyPlistDB & " WHERE 88_Code = '" & playCode & "'"
|
||||
Else
|
||||
DBCmd = "SELECT ItemCode,ProdCode,FaceShot,EyeShot FROM " & applyPlistDB & " WHERE ModelNum = '" & modelNum & "' AND TypeNum = '" & typeNum & "' AND ColorNum = '" & codeColor & "'"
|
||||
End If
|
||||
@ -4096,6 +4102,7 @@ Public Class mainForm
|
||||
Try
|
||||
Dim dataCount As Int16 = 0
|
||||
Dim codeExist As Boolean = False
|
||||
lowProdContain = False
|
||||
|
||||
ReDim prodArray(itemCode.id, 0)
|
||||
ReDim apiData(apiDataList.address)
|
||||
@ -4162,11 +4169,13 @@ Public Class mainForm
|
||||
prodArray(itemCode.code, dataCount) = jQuery.SelectToken(apiCommand(parsingCode.code)).ToString
|
||||
prodArray(itemCode.name, dataCount) = jQuery.SelectToken(apiCommand(parsingCode.name)).ToString
|
||||
Else
|
||||
errorOut("등록오류")
|
||||
errorOut("등록오류")
|
||||
errorGen("등록 데이터 중 제품이 등록되어 있지 않는 항목이 존재합니다.")
|
||||
Return False
|
||||
End If
|
||||
|
||||
If lowProdList.ContainsValue(prodArray(itemCode.code, dataCount)) And lowProdContain = False Then
|
||||
lowProdContain = True
|
||||
End If
|
||||
|
||||
prodArray(itemCode.chkCount, dataCount) = 0
|
||||
prodArray(itemCode.serialNum, dataCount) = Nothing
|
||||
@ -4185,6 +4194,7 @@ Public Class mainForm
|
||||
End If
|
||||
Next
|
||||
|
||||
|
||||
If codeExist = True Then
|
||||
errorOut("등록오류")
|
||||
errorGen("등록된 코드 번호가 존재하지 않습니다. 번호를 확인하여 주십시오.")
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user