me_sd 0.0.3beta → 0.2

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 +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