@@ -433,18 +433,24 @@ func (dc DecodeVINQueryHandler) processDeviceStyle(ctx context.Context, vinInfo
433433}
434434
435435func (dc DecodeVINQueryHandler ) saveVinDecodeNumber (ctx context.Context , vin shared.VIN , vinInfo * coremodels.VINDecodingInfoData , resp * p_grpc.DecodeVinResponse ) error {
436+ jpVIN := false
437+ if len (vin .String ()) < 17 {
438+ jpVIN = true
439+ }
436440 vinDecodeNumber := & models.VinNumber {
437441 Vin : vin .String (),
438442 ManufacturerName : resp .Manufacturer ,
439443 Wmi : null .StringFrom (vin .Wmi ()),
440- VDS : null .StringFrom (vin .VDS ()),
441- Vis : null .StringFrom (vin .VIS ()),
442- CheckDigit : null .StringFrom (vin .CheckDigit ()),
443- SerialNumber : vin .SerialNumber (),
444444 DecodeProvider : null .StringFrom (string (vinInfo .Source )),
445445 Year : int (resp .Year ),
446446 DefinitionID : resp .DefinitionId ,
447447 }
448+ if ! jpVIN {
449+ vinDecodeNumber .VDS = null .StringFrom (vin .VDS ())
450+ vinDecodeNumber .Vis = null .StringFrom (vin .VIS ())
451+ vinDecodeNumber .SerialNumber = vin .SerialNumber ()
452+ vinDecodeNumber .CheckDigit = null .StringFrom (vin .CheckDigit ())
453+ }
448454
449455 // Optional fields based on response and VIN info
450456 if len (resp .DeviceStyleId ) > 0 {
@@ -468,6 +474,10 @@ func (dc DecodeVINQueryHandler) saveVinDecodeNumber(ctx context.Context, vin sha
468474 if len (vinInfo .Raw ) > 0 {
469475 vinDecodeNumber .DatgroupData = null .JSONFrom (vinInfo .Raw )
470476 }
477+ case coremodels .Japan17VIN :
478+ if len (vinInfo .Raw ) > 0 {
479+ vinDecodeNumber .Vin17Data = null .JSONFrom (vinInfo .Raw )
480+ }
471481 }
472482
473483 // Insert VIN decode number into the database
0 commit comments