me_sd 0.0.3beta → 0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/me_sd.rb +26 -26
  3. metadata +4 -4
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 941dc0362e5bc77e988b58c63f85819035a7b4a1
4
- data.tar.gz: d67a49a6fc43bd400f51a08770a3c613e69f049c
3
+ metadata.gz: 09e0015bf0a216a04d39abdc9a2a62c3cdd34b57
4
+ data.tar.gz: 466b40aff46b4f08550f7b16e700a445ea8ce7e0
5
5
  SHA512:
6
- metadata.gz: 5fe673eefd73e36425110010575f8e4fccc89a6de38c045843e24d2439b69ba54ffcf48fb97a9e26eb932a222e42df98d83131ed81fa81123f66f41de735bb7b
7
- data.tar.gz: 85f5debddf474d137ee6e29574a23a0c943ddca418f4ce70b99ad0d96e12a58fb1fcded640e40610953012debe34b2995e4c61f57ad77322565e515582a55661
6
+ metadata.gz: e48b1af3bbe22d39538391f77696ca0154a85b5c5db20074640324491dc02569facb6f612dfe403f85656d77c2a5c330e37daf15ab1ddb313c443c7c739d86c1
7
+ data.tar.gz: 1f8bef934778c97b6c49fd148788587a648ed9be00c89ce4ff1e5d3711d8dd77c3f45a93e7d62b0ad7f742070ea5fde9e60170a213f07e89539aa6955a339d27
data/lib/me_sd.rb CHANGED
@@ -1,17 +1,3 @@
1
- # sd = MESD.new({ host: "192.168.0.150", port: "8080", username: "user", password: "P@ssw0rd" })
2
- # # default port is "80"
3
- # => true
4
- # unless sd.errors
5
- # requests = sd.get_all_requests
6
- # requests[0].data
7
- # end
8
- # => #<MESD::Request:0x0000000265d360 @id="29", ..., @description="request decription", @resolution="request resolution", ...>
9
- # request = Request.new({ session: sd.session, id: 29 })
10
- # request.data(:name, :resolution)
11
- # => #<MESD::Request:0x000000023b6800 @id="29", ..., @name="request name", @resolution="request resolution">
12
- # request.get_resolution
13
- # => "request resolution"
14
-
15
1
  class MESD
16
2
  attr_accessor :session, :last_error, :curobj, :current_body
17
3
 
@@ -84,15 +70,29 @@ class MESD
84
70
  end
85
71
 
86
72
  def get_all_requests
87
- requests = Array.new
73
+ get_last_requests(0)
74
+ end
75
+
76
+ def get_last_requests(number)
77
+ if number < 0
78
+ @last_error = "wrong requests number"
79
+ return false
80
+ end
88
81
  select_all_requests
89
- puts "Getting total #{@curobj['_TL']} requests:"
82
+ if number == 0
83
+ puts "Getting total #{@curobj['_TL']} requests:"
84
+ else
85
+ puts "Getting last #{number} of maximum #{@curobj['_TL']} requests:"
86
+ end
87
+ requests = Array.new
90
88
  get_requests_urls(@current_body).each { |url| requests.push(Request.new({ session: @session, url: url })) }
91
89
  begin
92
- not_last_page = next_page
90
+ there_are_more_pages = next_page
93
91
  get_requests_urls(@current_body).each { |url| requests.push(Request.new({ session: @session, url: url })) }
94
- end while not_last_page
95
- requests
92
+ break unless requests.size < number
93
+ break unless there_are_more_pages
94
+ end while true
95
+ requests[0..number-1]
96
96
  end
97
97
 
98
98
  def select_all_requests
@@ -129,7 +129,7 @@ class MESD
129
129
  request.add_field("Referer", "http://#{session[:host]}:#{session[:port]}/WOListView.do")
130
130
  @curobj = get_curobj
131
131
  return false unless @curobj
132
- print "#{(@curobj["_FI"].to_f / @curobj["_TL"].to_f * 100).round}%.."
132
+ print "#{@curobj["_PN"]}/#{(@curobj["_TL"].to_i / @curobj["_PL"].to_f).ceil}.."
133
133
  # increment page number
134
134
  @curobj["_PN"] = (@curobj["_PN"].to_i + 1).to_s
135
135
  # update first item
@@ -150,10 +150,7 @@ class MESD
150
150
  rescue *EXCEPTIONS => @last_error
151
151
  end
152
152
  # if (first item + per page) > total items then it is the last page
153
- if (@curobj["_FI"].to_i + @curobj["_PL"].to_i) > @curobj["_TL"].to_i
154
- puts "100%"
155
- return false
156
- end
153
+ return false if (@curobj["_FI"].to_i + @curobj["_PL"].to_i) > @curobj["_TL"].to_i
157
154
  true
158
155
  end
159
156
 
@@ -208,7 +205,7 @@ class Request < MESD
208
205
  @id = args[:id]
209
206
  elsif args[:url]
210
207
  if args[:url] =~ /WorkOrder\.do\?woMode=viewWO&woID=(?<ID>\d+)&&fromListView=true/
211
- @id = Regexp.last_match("ID").to_i
208
+ @id = Regexp.last_match("ID")
212
209
  else
213
210
  return false
214
211
  end
@@ -218,7 +215,10 @@ class Request < MESD
218
215
  end
219
216
 
220
217
  def data(*args)
221
- return false unless self.id
218
+ unless self.id
219
+ @last_error = "id error"
220
+ return false
221
+ end
222
222
  if args.size == 0
223
223
  only = []
224
224
  else
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: me_sd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3beta
4
+ version: '0.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alexander Morozov
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-05-19 00:00:00.000000000 Z
11
+ date: 2016-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -47,9 +47,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
47
47
  version: '0'
48
48
  required_rubygems_version: !ruby/object:Gem::Requirement
49
49
  requirements:
50
- - - ">"
50
+ - - ">="
51
51
  - !ruby/object:Gem::Version
52
- version: 1.3.1
52
+ version: '0'
53
53
  requirements: []
54
54
  rubyforge_project:
55
55
  rubygems_version: 2.5.1