shopgem 0.0.1
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.
- checksums.yaml +7 -0
- data/lib/shopgem.rb +60 -0
- data/lib/shopgem/booksdb.rb +176 -0
- metadata +45 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA1:
|
|
3
|
+
metadata.gz: 197b7144bf3d98ffbfdb91a6e34f852ac6265f5a
|
|
4
|
+
data.tar.gz: 920dff14404fa34abbb93f0d98661f8141fa79c5
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 14e094747c30bdefe50838159a3fa4404f5d7a2ea32d3c45e07c7cad26281904b394b1c01dc3484c4d8aec18768259c61e08b0617b293c8ec37757314d7b87f9
|
|
7
|
+
data.tar.gz: 364bc2d009c7a699f61c81c90bf81efe56cb4a3c58fc3bf51642f80bf683efcc32a2fa7dc05347e438ff68f2011123817f83ee6ee03e389d51733d2c3665c08e
|
data/lib/shopgem.rb
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
class Shopgem
|
|
2
|
+
|
|
3
|
+
def main
|
|
4
|
+
obj = BookDb.new
|
|
5
|
+
|
|
6
|
+
while(0)
|
|
7
|
+
puts "\n\n************* WelCome to Flipkart *************\nSelect Operation from below"
|
|
8
|
+
puts " 1. Enter New Book in Database"
|
|
9
|
+
puts " 2. Show All Books "
|
|
10
|
+
puts " 3. Update Book"
|
|
11
|
+
puts " 4. Delete Book"
|
|
12
|
+
puts " 5. Add book to kart"
|
|
13
|
+
puts " 6. Show Kart"
|
|
14
|
+
puts " 7. Remove book from kart"
|
|
15
|
+
puts " 8. Checkout"
|
|
16
|
+
puts " 9. Exit"
|
|
17
|
+
|
|
18
|
+
ch = gets.to_i
|
|
19
|
+
|
|
20
|
+
case ch
|
|
21
|
+
when 1
|
|
22
|
+
puts 'new book'
|
|
23
|
+
obj.addBooks
|
|
24
|
+
when 2
|
|
25
|
+
puts 'show book'
|
|
26
|
+
obj.showBooks
|
|
27
|
+
|
|
28
|
+
when 3
|
|
29
|
+
puts 'update book'
|
|
30
|
+
obj.update
|
|
31
|
+
when 4
|
|
32
|
+
puts 'Delete book'
|
|
33
|
+
obj.delete
|
|
34
|
+
when 5
|
|
35
|
+
puts 'Add to kart'
|
|
36
|
+
obj.add_to_kart
|
|
37
|
+
when 6
|
|
38
|
+
puts 'show kart'
|
|
39
|
+
obj.showKart
|
|
40
|
+
when 7
|
|
41
|
+
puts 'Remove from kart'
|
|
42
|
+
obj.remove_from_kart
|
|
43
|
+
when 8
|
|
44
|
+
puts 'Checkout'
|
|
45
|
+
obj.checkout
|
|
46
|
+
when 9
|
|
47
|
+
break;
|
|
48
|
+
else
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
require 'shopgem/booksdb'
|
|
56
|
+
|
|
57
|
+
F = Shopgem.new
|
|
58
|
+
F.main()
|
|
59
|
+
|
|
60
|
+
|
|
@@ -0,0 +1,176 @@
|
|
|
1
|
+
class Shopgem::BookDb
|
|
2
|
+
|
|
3
|
+
|
|
4
|
+
def initialize
|
|
5
|
+
|
|
6
|
+
@books=[]
|
|
7
|
+
@karts=[]
|
|
8
|
+
|
|
9
|
+
bFile = File.open("booksdb.txt", "a+")
|
|
10
|
+
if bFile
|
|
11
|
+
arr = IO.readlines("booksdb.txt")
|
|
12
|
+
i = 0
|
|
13
|
+
while(i < arr.length-1)
|
|
14
|
+
details = []
|
|
15
|
+
bcode = (arr[i]).to_i
|
|
16
|
+
details.push bcode
|
|
17
|
+
bname = (arr[i+1]).chomp
|
|
18
|
+
details.push bname
|
|
19
|
+
bprice = (arr[i+2]).chomp
|
|
20
|
+
details.push bprice
|
|
21
|
+
bqnty = (arr[i+3]).chomp
|
|
22
|
+
details.push bqnty
|
|
23
|
+
@books << details
|
|
24
|
+
i+=4
|
|
25
|
+
end
|
|
26
|
+
else
|
|
27
|
+
puts "Unable to open file!"
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
bFile.close
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
def addBooks
|
|
34
|
+
|
|
35
|
+
bname = ' '
|
|
36
|
+
bprice = 0
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
details = []
|
|
40
|
+
puts 'Enter Book code:'
|
|
41
|
+
bcode = gets.to_i
|
|
42
|
+
details.push bcode
|
|
43
|
+
puts 'Enter Book Name:'
|
|
44
|
+
bname = gets.chomp
|
|
45
|
+
details.push bname
|
|
46
|
+
puts 'Enter Price'
|
|
47
|
+
bprice = gets.to_i
|
|
48
|
+
details.push bprice
|
|
49
|
+
puts 'Enter Quantity'
|
|
50
|
+
bqnty = gets.to_i
|
|
51
|
+
details.push bqnty
|
|
52
|
+
@books << details
|
|
53
|
+
|
|
54
|
+
add_to_database
|
|
55
|
+
end
|
|
56
|
+
|
|
57
|
+
def showBooks
|
|
58
|
+
|
|
59
|
+
puts "srno code Book Name Price Quantity"
|
|
60
|
+
i=0
|
|
61
|
+
@books.each do |book|
|
|
62
|
+
print (i+=1)
|
|
63
|
+
print" "+book[0].to_s+" "+book[1].to_s+" "+book[2].to_s+" "+book[3].to_s+"\n"
|
|
64
|
+
end
|
|
65
|
+
puts
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
def add_to_kart()
|
|
70
|
+
kart = []
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
showBooks
|
|
74
|
+
puts 'select book for add to cart'
|
|
75
|
+
choice = gets.to_i
|
|
76
|
+
puts 'Enter Quantity'
|
|
77
|
+
qnt = gets.to_i
|
|
78
|
+
|
|
79
|
+
kart[0] = @books[choice - 1][0]
|
|
80
|
+
kart[1] = @books[choice-1][1]
|
|
81
|
+
kart[2] = @books[choice-1][2]
|
|
82
|
+
kart[3] = qnt
|
|
83
|
+
@karts.push kart
|
|
84
|
+
|
|
85
|
+
if @books[choice-1][3].to_i < qnt
|
|
86
|
+
puts ' ** Enter quantity less than '+ @books[choice-1][3]
|
|
87
|
+
else
|
|
88
|
+
@books[choice-1][3] = (@books[choice-1][3]).to_i - qnt
|
|
89
|
+
puts @books[choice-1][1] + " Added to cart "
|
|
90
|
+
#add_to_database
|
|
91
|
+
end
|
|
92
|
+
#if @books[choice-1][3]==0
|
|
93
|
+
|
|
94
|
+
#end
|
|
95
|
+
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
def showKart
|
|
99
|
+
puts 'Your Kart '
|
|
100
|
+
puts "srno code Book Name Price Quantity"
|
|
101
|
+
i = 0
|
|
102
|
+
@karts.each do |book|
|
|
103
|
+
print "\n"+(i+=1).to_s+" "+book[0].to_s+" "+book[1].to_s+" "+book[2].to_s+" "+book[3].to_s
|
|
104
|
+
end
|
|
105
|
+
puts
|
|
106
|
+
end
|
|
107
|
+
|
|
108
|
+
def remove_from_kart
|
|
109
|
+
showKart
|
|
110
|
+
puts 'Enter the book to remove from kart'
|
|
111
|
+
choice = gets.to_i
|
|
112
|
+
code = @karts[choice-1][1]
|
|
113
|
+
|
|
114
|
+
i=0
|
|
115
|
+
@books.each do |book|
|
|
116
|
+
if book[1]==code
|
|
117
|
+
@books[i][3] = (@books[i][3]).to_i + 1
|
|
118
|
+
end
|
|
119
|
+
i+=1
|
|
120
|
+
end
|
|
121
|
+
@karts[choice-1][3] = (@karts[choice-1][3]).to_i - 1
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
showKart
|
|
125
|
+
end
|
|
126
|
+
|
|
127
|
+
def checkout
|
|
128
|
+
total=0
|
|
129
|
+
@karts.each do |book|
|
|
130
|
+
total = total + (book[2].to_i * book[3].to_i)
|
|
131
|
+
end
|
|
132
|
+
showKart
|
|
133
|
+
puts 'Your total bill is : ' + total.to_s
|
|
134
|
+
|
|
135
|
+
add_to_database
|
|
136
|
+
end
|
|
137
|
+
|
|
138
|
+
def add_to_database
|
|
139
|
+
|
|
140
|
+
aFile = File.new("booksdb.txt", "w+")
|
|
141
|
+
if aFile
|
|
142
|
+
aFile.puts @books
|
|
143
|
+
else
|
|
144
|
+
puts "Unable to open file!"
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
aFile.close
|
|
148
|
+
end
|
|
149
|
+
|
|
150
|
+
def update
|
|
151
|
+
showBooks
|
|
152
|
+
puts 'Enter sr no to update book'
|
|
153
|
+
ch=(gets.to_i)-1
|
|
154
|
+
puts 'current name :'+ @books[ch][1]
|
|
155
|
+
puts 'enter new name:'
|
|
156
|
+
@books[ch][1]=gets.chomp
|
|
157
|
+
puts 'current price :'+ (@books[ch][2]).to_s
|
|
158
|
+
puts 'enter new price:'
|
|
159
|
+
@books[ch][2]=gets.to_i
|
|
160
|
+
puts 'current Quantity :'+ (@books[ch][3]).to_s
|
|
161
|
+
puts 'enter new Quantity:'
|
|
162
|
+
@books[ch][3]=gets.to_i
|
|
163
|
+
puts"Data Updated"
|
|
164
|
+
add_to_database
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
def delete
|
|
168
|
+
|
|
169
|
+
showBooks
|
|
170
|
+
puts 'Enter sr no to delete book'
|
|
171
|
+
ch = (gets.to_i)-1
|
|
172
|
+
@books.delete_at(ch)
|
|
173
|
+
puts 'book deleted'
|
|
174
|
+
add_to_database
|
|
175
|
+
end
|
|
176
|
+
end
|
metadata
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
|
2
|
+
name: shopgem
|
|
3
|
+
version: !ruby/object:Gem::Version
|
|
4
|
+
version: 0.0.1
|
|
5
|
+
platform: ruby
|
|
6
|
+
authors:
|
|
7
|
+
- rajanikant
|
|
8
|
+
autorequire:
|
|
9
|
+
bindir: bin
|
|
10
|
+
cert_chain: []
|
|
11
|
+
date: 2016-10-17 00:00:00.000000000 Z
|
|
12
|
+
dependencies: []
|
|
13
|
+
description: online book sellenig app
|
|
14
|
+
email: nick@quaran.to
|
|
15
|
+
executables: []
|
|
16
|
+
extensions: []
|
|
17
|
+
extra_rdoc_files: []
|
|
18
|
+
files:
|
|
19
|
+
- lib/shopgem.rb
|
|
20
|
+
- lib/shopgem/booksdb.rb
|
|
21
|
+
homepage: http://rubygems.org/gems/mygem
|
|
22
|
+
licenses:
|
|
23
|
+
- MIT
|
|
24
|
+
metadata: {}
|
|
25
|
+
post_install_message:
|
|
26
|
+
rdoc_options: []
|
|
27
|
+
require_paths:
|
|
28
|
+
- lib
|
|
29
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
|
30
|
+
requirements:
|
|
31
|
+
- - ">="
|
|
32
|
+
- !ruby/object:Gem::Version
|
|
33
|
+
version: '0'
|
|
34
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
35
|
+
requirements:
|
|
36
|
+
- - ">="
|
|
37
|
+
- !ruby/object:Gem::Version
|
|
38
|
+
version: '0'
|
|
39
|
+
requirements: []
|
|
40
|
+
rubyforge_project:
|
|
41
|
+
rubygems_version: 2.4.8
|
|
42
|
+
signing_key:
|
|
43
|
+
specification_version: 4
|
|
44
|
+
summary: mybooks!
|
|
45
|
+
test_files: []
|