carinfosave 0.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/car_add.rb +72 -0
  3. metadata +43 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a0e5fa1e45fe439e7e724de541b16a9fd480360dcf683a71fb0fadb933c0bdb4
4
+ data.tar.gz: ec388c5ce332dbd2d26259a703c673674aa0378e026458c6aa4fcbd2a37bea6e
5
+ SHA512:
6
+ metadata.gz: 8cad4b6bd8d36794e2289c643712c59bf65f8b8c61ee935e32c21f14d40e4ede170c7d7b5c80df56df8beef58e438bb9aa563717cd78a9aa5eb2382cbc6b4fd0
7
+ data.tar.gz: 115c641022fa087f4d07779ac1e929e18311d424128f333dd0e4ed8608c2c488e385b80a204e18dbc019c615bf921ec9f17c42605c38640417b54f66cfcdbe62
data/lib/car_add.rb ADDED
@@ -0,0 +1,72 @@
1
+ require 'yaml'
2
+ require 'json'
3
+
4
+ module Car
5
+ class CarAdd
6
+ attr_accessor :plate, :model, :full_name
7
+
8
+ def initialize(plate, model, full_name)
9
+ @plate = plate
10
+ @model = model
11
+ @full_name = full_name
12
+ end
13
+
14
+ def add
15
+ city_file = File.read('plates.json')
16
+ city_list = JSON.parse(city_file)
17
+ item = "#{full_name.upcase} - #{city_list[plate.slice(0,2)]} - #{model.upcase} - #{plate}"
18
+ File.open("cars.yml", "a") {|file| file.write(item.to_yaml)}
19
+ puts "#{plate} vehicle was added."
20
+ end
21
+ end
22
+
23
+ class PlateValidate
24
+ def self.validate(plate)
25
+ city_code = plate.slice(0,2).to_i
26
+ if 0 < city_code && city_code < 81
27
+ if File.exist?('cars.yml')
28
+ items = YAML.load_stream(File.open('cars.yml'))
29
+ result = items.filter{|f| f.split('-')[3].strip() == plate}
30
+ if result.length() == 0
31
+ 1
32
+ else
33
+ puts 'Bu plakali arac var.'
34
+ end
35
+ else
36
+ 1
37
+ end
38
+ else
39
+ puts 'Plaka formati uygun degil. (01-81 arasinda giriniz)'
40
+ end
41
+ end
42
+
43
+ end
44
+
45
+ class ModelValidate
46
+ def self.validate(model)
47
+ file = File.read('models.json')
48
+ model_list = JSON.parse(file)
49
+ result = model_list.filter{|m| m['name'] == model.upcase}
50
+ if result.length() == 0
51
+ puts 'Bulunmayan arac modeli.'
52
+ else
53
+ 1
54
+ end
55
+ end
56
+ end
57
+
58
+ class CarRead
59
+ def self.read(plate)
60
+ items = YAML.load_stream(File.open('cars.yml'))
61
+ result = items.filter{|f| f.split('-')[3].strip() == plate}
62
+ if result.length() == 0
63
+ puts "#{plate} plakali arac sistemde yok."
64
+ else
65
+ puts result
66
+ end
67
+ end
68
+ end
69
+ end
70
+
71
+
72
+
metadata ADDED
@@ -0,0 +1,43 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: carinfosave
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Kadir Atali
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-10-07 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Car info save app
14
+ email: kadir_atali.com
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/car_add.rb
20
+ homepage: https://rubygems.org/gems/car_add
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubygems_version: 3.1.6
40
+ signing_key:
41
+ specification_version: 4
42
+ summary: kadir_a!
43
+ test_files: []