rails_wechat 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (108) hide show
  1. checksums.yaml +4 -4
  2. data/app/apis/wechat/api/program/wxa.rb +15 -0
  3. data/app/apis/wechat/signature.rb +5 -1
  4. data/app/controllers/wechat/admin/apps_controller.rb +6 -4
  5. data/app/controllers/wechat/admin/wechat_users_controller.rb +1 -1
  6. data/app/controllers/wechat/controller/application.rb +2 -2
  7. data/app/controllers/wechat/my/users_controller.rb +1 -5
  8. data/app/controllers/wechat/panel/template_configs_controller.rb +0 -12
  9. data/app/controllers/wechat/platforms_controller.rb +1 -1
  10. data/app/controllers/wechat/program_users_controller.rb +16 -15
  11. data/app/controllers/wechat/wechat_controller.rb +1 -1
  12. data/app/controllers/wechat/wechats_controller.rb +2 -2
  13. data/app/helpers/wechat/application_helper.rb +31 -0
  14. data/app/jobs/wechat/ticket_clean_job.rb +9 -0
  15. data/app/models/oauth_user/wechat/wechat_user.rb +6 -0
  16. data/app/models/wechat/ext/member.rb +21 -0
  17. data/app/models/wechat/ext/organ.rb +1 -1
  18. data/app/models/wechat/ext/user.rb +2 -2
  19. data/app/models/wechat/ext/user_tag.rb +1 -1
  20. data/app/models/wechat/model/app/public_app.rb +3 -4
  21. data/app/models/wechat/model/app.rb +8 -4
  22. data/app/models/wechat/model/menu/click_menu.rb +1 -6
  23. data/app/models/wechat/model/menu/mini_program_menu.rb +1 -6
  24. data/app/models/wechat/model/menu/scan_push_menu.rb +1 -6
  25. data/app/models/wechat/model/menu/scan_wait_menu.rb +1 -6
  26. data/app/models/wechat/model/menu/view_menu.rb +1 -2
  27. data/app/models/wechat/model/menu.rb +1 -2
  28. data/app/models/wechat/model/oauth_user/program_user.rb +6 -4
  29. data/app/models/wechat/model/oauth_user/wechat_user.rb +26 -15
  30. data/app/models/wechat/model/receive.rb +2 -3
  31. data/app/models/wechat/model/reply/news_reply.rb +4 -0
  32. data/app/models/wechat/model/reply/success_reply.rb +4 -0
  33. data/app/models/wechat/model/reply.rb +4 -0
  34. data/app/models/wechat/model/request.rb +40 -7
  35. data/app/models/wechat/model/scene.rb +17 -4
  36. data/app/models/wechat/model/tag.rb +1 -1
  37. data/app/models/wechat/model/template_config/template_public.rb +1 -1
  38. data/app/models/wechat/model/template_config.rb +2 -0
  39. data/app/models/wechat/model/ticket.rb +5 -0
  40. data/app/models/wechat/model/user_tag.rb +2 -6
  41. data/app/views/admin/_wechat_nav.html.erb +2 -2
  42. data/app/views/application/_wx_open_subscribe.html.erb +15 -0
  43. data/app/views/my/_wechat_nav.html+phone.erb +2 -2
  44. data/app/views/panel/_wechat_nav.html.erb +2 -2
  45. data/app/views/wechat/admin/apps/_form.html.erb +1 -0
  46. data/app/views/wechat/admin/apps/_index_tbody.html.erb +4 -16
  47. data/app/views/wechat/admin/apps/_index_thead.html.erb +5 -2
  48. data/app/views/wechat/admin/apps/_index_tr.html.erb +27 -7
  49. data/app/views/wechat/admin/apps/_pay_form.html.erb +10 -7
  50. data/app/views/wechat/admin/apps/edit_cert.html.erb +2 -2
  51. data/app/views/wechat/admin/apps/edit_pay.html.erb +3 -0
  52. data/app/views/wechat/admin/apps/update_cert.turbo_stream.erb +3 -0
  53. data/app/views/wechat/admin/{menus → base}/_breadcrumb.html.erb +1 -0
  54. data/app/views/wechat/admin/base/_wechat_nav_user.html.erb +0 -8
  55. data/app/views/wechat/admin/extractors/_form.html.erb +2 -2
  56. data/app/views/wechat/admin/menus/_button.html.erb +3 -3
  57. data/app/views/wechat/admin/menus/_index_tbody.html.erb +2 -2
  58. data/app/views/wechat/admin/menus/_index_tr.html.erb +3 -3
  59. data/app/views/wechat/admin/registers/_button.html.erb +1 -1
  60. data/app/views/wechat/admin/registers/_index_tbody.html.erb +3 -3
  61. data/app/views/wechat/admin/registers/_index_tr.html.erb +6 -6
  62. data/app/views/wechat/admin/replies/_index_tbody.html.erb +2 -2
  63. data/app/views/wechat/admin/requests/_button.html.erb +1 -1
  64. data/app/views/wechat/admin/requests/_index_tr.html.erb +2 -2
  65. data/app/views/wechat/admin/responses/_index_tbody.html.erb +1 -1
  66. data/app/views/wechat/admin/responses/_index_thead.html.erb +1 -1
  67. data/app/views/wechat/admin/responses/_index_tr.html.erb +4 -4
  68. data/app/views/wechat/admin/responses/_show_table.html.erb +1 -1
  69. data/app/views/wechat/admin/tags/_button.html.erb +2 -2
  70. data/app/views/wechat/admin/tags/_index_tr.html.erb +3 -3
  71. data/app/views/wechat/admin/tags/index.html.erb +1 -0
  72. data/app/views/wechat/admin/templates/_button.html.erb +1 -1
  73. data/app/views/wechat/admin/templates/sync.turbo_stream.erb +3 -0
  74. data/app/views/wechat/admin/wechat_users/_filter_form.html.erb +2 -1
  75. data/app/views/wechat/admin/wechat_users/_index_tbody.html.erb +7 -1
  76. data/app/views/wechat/admin/wechat_users/_index_thead.html.erb +1 -1
  77. data/app/views/wechat/apps/login.html.erb +4 -1
  78. data/app/views/wechat/my/registers/_wechat_register.html.erb +3 -3
  79. data/app/views/wechat/my/registers/_wechat_register_done.html.erb +1 -1
  80. data/app/views/wechat/my/registers/index.html+phone.erb +1 -1
  81. data/app/views/wechat/my/registers/index.html.erb +4 -4
  82. data/app/views/wechat/my/subscribes/index.html.erb +4 -4
  83. data/app/views/wechat/my/users/_request.html.erb +26 -0
  84. data/app/views/wechat/my/users/invite_qrcode.html+phone.erb +4 -23
  85. data/app/views/wechat/panel/apps/_index_tbody.html.erb +4 -4
  86. data/app/views/wechat/panel/apps/_index_tr.html.erb +3 -3
  87. data/app/views/wechat/panel/menus/_button.html.erb +2 -2
  88. data/app/views/wechat/panel/menus/_index_tbody.html.erb +2 -2
  89. data/app/views/wechat/panel/menus/_index_tr.html.erb +3 -3
  90. data/app/views/wechat/panel/platforms/_index_tr.html.erb +5 -5
  91. data/app/views/wechat/share/apps/_index_tbody.html.erb +3 -3
  92. data/app/views/wechat/share/apps/_index_tr.html.erb +1 -1
  93. data/app/views/wechat/share/menus/_button.html.erb +3 -3
  94. data/app/views/wechat/share/menus/_index_tbody.html.erb +3 -3
  95. data/app/views/wechat/share/menus/_index_tr.html.erb +3 -3
  96. data/app/views/wechat/share/scenes/_index_tr.html.erb +6 -6
  97. data/app/views/wechat/share/wechat_users/_index_tr.html.erb +2 -2
  98. data/config/locales/zh.controller.yml +4 -0
  99. data/config/locales/zh.enum.yml +4 -3
  100. data/config/routes.rb +2 -2
  101. data/lib/rails_wechat/config.rb +6 -9
  102. data/lib/rails_wechat.rb +0 -1
  103. metadata +36 -19
  104. data/app/jobs/wechat/user_tag_remove_job.rb +0 -11
  105. data/app/views/wechat/admin/requests/_breadcrumb.html.erb +0 -7
  106. data/app/views/wechat/admin/templates/_breadcrumb.html.erb +0 -7
  107. data/app/views/wechat/my/users/requests.html+phone.erb +0 -53
  108. data/lib/rails_wechat/helpers.rb +0 -32
data/lib/rails_wechat.rb CHANGED
@@ -3,7 +3,6 @@
3
3
  # engine
4
4
  require 'rails_wechat/engine'
5
5
  require 'rails_wechat/config'
6
- require 'rails_wechat/helpers'
7
6
 
8
7
  # omniauth
9
8
  #require 'omniauth/strategies/wechat'
metadata CHANGED
@@ -1,31 +1,31 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_wechat
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - qinmingyuan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-09-13 00:00:00.000000000 Z
11
+ date: 2021-10-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: rails_com
14
+ name: rails_extend
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.2'
19
+ version: '0'
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.2'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rails_auth
28
+ name: rqrcode
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -39,19 +39,33 @@ dependencies:
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rqrcode
42
+ name: httpx
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '0.18'
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '0.18'
55
+ - !ruby/object:Gem::Dependency
56
+ name: http-form_data
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '2.3'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '2.3'
55
69
  description: 微信集成一揽子解决方案
56
70
  email:
57
71
  - mingyuan0715@foxmail.com
@@ -132,6 +146,7 @@ files:
132
146
  - app/controllers/wechat/share/wechat_users_controller.rb
133
147
  - app/controllers/wechat/wechat_controller.rb
134
148
  - app/controllers/wechat/wechats_controller.rb
149
+ - app/helpers/wechat/application_helper.rb
135
150
  - app/jobs/wechat/agency_job.rb
136
151
  - app/jobs/wechat/annunciate_job.rb
137
152
  - app/jobs/wechat/file_reply_upload_job.rb
@@ -139,10 +154,10 @@ files:
139
154
  - app/jobs/wechat/notice_send_job.rb
140
155
  - app/jobs/wechat/qrcode_job.rb
141
156
  - app/jobs/wechat/tag_job.rb
157
+ - app/jobs/wechat/ticket_clean_job.rb
142
158
  - app/jobs/wechat/user_info_job.rb
143
159
  - app/jobs/wechat/user_job.rb
144
160
  - app/jobs/wechat/user_tag_job.rb
145
- - app/jobs/wechat/user_tag_remove_job.rb
146
161
  - app/mailboxes/application_mailbox.rb
147
162
  - app/mailboxes/wechat_mailbox.rb
148
163
  - app/models/app/wechat/mobile_app.rb
@@ -194,6 +209,7 @@ files:
194
209
  - app/models/wechat/application_record.rb
195
210
  - app/models/wechat/auth.rb
196
211
  - app/models/wechat/ext/effective.rb
212
+ - app/models/wechat/ext/member.rb
197
213
  - app/models/wechat/ext/organ.rb
198
214
  - app/models/wechat/ext/subscribed.rb
199
215
  - app/models/wechat/ext/user.rb
@@ -295,6 +311,7 @@ files:
295
311
  - app/models/wechat/ticket.rb
296
312
  - app/models/wechat/user_tag.rb
297
313
  - app/views/admin/_wechat_nav.html.erb
314
+ - app/views/application/_wx_open_subscribe.html.erb
298
315
  - app/views/application/wechat_require_login.json.jbuilder
299
316
  - app/views/my/_wechat_nav.html+phone.erb
300
317
  - app/views/my/_wechat_nav.html.erb
@@ -316,9 +333,12 @@ files:
316
333
  - app/views/wechat/admin/apps/_show_table.html.erb
317
334
  - app/views/wechat/admin/apps/_wechat_app.json.jbuilder
318
335
  - app/views/wechat/admin/apps/edit_cert.html.erb
336
+ - app/views/wechat/admin/apps/edit_pay.html.erb
319
337
  - app/views/wechat/admin/apps/index.html.erb
320
338
  - app/views/wechat/admin/apps/index.json.jbuilder
321
339
  - app/views/wechat/admin/apps/info.html.erb
340
+ - app/views/wechat/admin/apps/update_cert.turbo_stream.erb
341
+ - app/views/wechat/admin/base/_breadcrumb.html.erb
322
342
  - app/views/wechat/admin/base/_nav.html.erb
323
343
  - app/views/wechat/admin/base/_wechat_nav_user.html.erb
324
344
  - app/views/wechat/admin/extractors/_breadcrumb.html.erb
@@ -330,7 +350,6 @@ files:
330
350
  - app/views/wechat/admin/extractors/_new_form.html.erb
331
351
  - app/views/wechat/admin/extractors/_show_table.html.erb
332
352
  - app/views/wechat/admin/extractors/index.html.erb
333
- - app/views/wechat/admin/menus/_breadcrumb.html.erb
334
353
  - app/views/wechat/admin/menus/_button.html.erb
335
354
  - app/views/wechat/admin/menus/_edit_form.html.erb
336
355
  - app/views/wechat/admin/menus/_edit_parent_form.html.erb
@@ -388,7 +407,6 @@ files:
388
407
  - app/views/wechat/admin/replies/build.turbo_stream.erb
389
408
  - app/views/wechat/admin/replies/index.html.erb
390
409
  - app/views/wechat/admin/replies/index.js
391
- - app/views/wechat/admin/requests/_breadcrumb.html.erb
392
410
  - app/views/wechat/admin/requests/_button.html.erb
393
411
  - app/views/wechat/admin/requests/_filter_form.html.erb
394
412
  - app/views/wechat/admin/requests/_filter_table.html.erb
@@ -425,7 +443,6 @@ files:
425
443
  - app/views/wechat/admin/tags/_show_table.html.erb
426
444
  - app/views/wechat/admin/tags/index.html.erb
427
445
  - app/views/wechat/admin/tags/sync.turbo_stream.erb
428
- - app/views/wechat/admin/templates/_breadcrumb.html.erb
429
446
  - app/views/wechat/admin/templates/_button.html.erb
430
447
  - app/views/wechat/admin/templates/_edit_form.html.erb
431
448
  - app/views/wechat/admin/templates/_filter_form.html.erb
@@ -436,6 +453,7 @@ files:
436
453
  - app/views/wechat/admin/templates/_new_form.html.erb
437
454
  - app/views/wechat/admin/templates/_show_table.html.erb
438
455
  - app/views/wechat/admin/templates/index.html.erb
456
+ - app/views/wechat/admin/templates/sync.turbo_stream.erb
439
457
  - app/views/wechat/admin/wechat_users/_edit_form.html.erb
440
458
  - app/views/wechat/admin/wechat_users/_filter_form.html.erb
441
459
  - app/views/wechat/admin/wechat_users/_index_tbody.html.erb
@@ -469,9 +487,9 @@ files:
469
487
  - app/views/wechat/my/subscribes/_form.html.erb
470
488
  - app/views/wechat/my/subscribes/_show_table.html.erb
471
489
  - app/views/wechat/my/subscribes/index.html.erb
490
+ - app/views/wechat/my/users/_request.html.erb
472
491
  - app/views/wechat/my/users/invite_qrcode.html+phone.erb
473
492
  - app/views/wechat/my/users/invite_qrcode.html.erb
474
- - app/views/wechat/my/users/requests.html+phone.erb
475
493
  - app/views/wechat/panel/agencies/_breadcrumb.html.erb
476
494
  - app/views/wechat/panel/agencies/_button.html.erb
477
495
  - app/views/wechat/panel/agencies/_edit_form.html.erb
@@ -591,7 +609,6 @@ files:
591
609
  - lib/rails_wechat.rb
592
610
  - lib/rails_wechat/config.rb
593
611
  - lib/rails_wechat/engine.rb
594
- - lib/rails_wechat/helpers.rb
595
612
  - lib/rails_wechat/version.rb
596
613
  homepage: https://github.com/work-design/rails_wechat
597
614
  licenses:
@@ -1,11 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Wechat
4
- class UserTagRemoveJob < ApplicationJob
5
-
6
- def perform(wechat_user_tag)
7
- wechat_user_tag.remove_from_wechat
8
- end
9
-
10
- end
11
- end
@@ -1,7 +0,0 @@
1
- <div class="breadcrumb has-succeeds-separator">
2
- <ul>
3
- <li><%= link_to t('wechat.admin.apps.index.title'), { controller: 'apps' } %></li>
4
- <li><%= link_to @app.name, { controller: 'apps', id: @app.id } %></li>
5
- <li class="is-active"><%= t('.title') %></li>
6
- </ul>
7
- </div>
@@ -1,7 +0,0 @@
1
- <div class="breadcrumb has-succeeds-separator">
2
- <ul>
3
- <li><%= link_to t('wechat.admin.apps.index.title'), { controller: 'apps' } %></li>
4
- <li><%= link_to @app.name, { controller: 'apps', id: @app.id } %></li>
5
- <li class="is-active"><%= t('.title') %></li>
6
- </ul>
7
- </div>
@@ -1,53 +0,0 @@
1
- <div class="box">
2
- <p class="has-text-centered"><%= current_user.name %></p>
3
- <figure class="image">
4
- <%= image_tag @scene.qrcode_file_url if @scene %>
5
- </figure>
6
- </div>
7
- <div class="weui-panel" style="padding-top: 1px">
8
- <div class="weui-panel__hd p-0">
9
- <div class="weui-navbar">
10
- <%= link_to({ action: 'invite_qrcode' }, class: 'weui-navbar__item') do %>
11
- 邀请列表
12
- <% end %>
13
- <%= link_to({ action: 'requests' }, class: 'weui-navbar__item weui-bar__item_on') do %>
14
- 邀请记录
15
- <% end %>
16
- </div>
17
- </div>
18
- <div class="weui-panel__bd">
19
- <div class="weui-cells mt-0">
20
- <% @requests.each do |request| %>
21
- <div class="weui-media-box weui-media-box_appmsg">
22
- <div class="weui-media-box__hd">
23
- <% if request.wechat_user.avatar_url.present? %>
24
- <%= image_tag request.wechat_user.avatar_url, class: 'weui-media-box__thumb' %>
25
- <% end %>
26
- </div>
27
- <div class="weui-media-box__bd">
28
- <h4 class="weui-media-box__title">
29
- <span><%= request.wechat_user.name %></span>
30
- <span class="weui-badge"><%= request.type_i18n %></span>
31
- <% if request.wechat_user.request_id == request.id %>
32
- <span class="tag is-success">邀请成功</span>
33
- <% else %>
34
- <span class="tag">曾注册用户</span>
35
- <% end %>
36
- </h4>
37
- <ul class="weui-media-box__info">
38
- <li class="weui-media-box__info__meta">
39
- <span><%= request.init_wechat_user_i18n %></span>
40
- <% unless request.init_wechat_user %>
41
- <time data-controller="time"><%= request.wechat_user.created_at.to_s(:rfc822) %></time>
42
- <% end %>
43
- </li>
44
- <li class="weui-media-box__info__meta weui-media-box__info__meta_extra"><time data-controller="time" data-format="MM-DD HH:mm:ss"><%= request.created_at.to_s(:rfc822) %></time></li>
45
- </ul>
46
- </div>
47
- </div>
48
- <% end %>
49
- </div>
50
- </div>
51
- </div>
52
-
53
- <%= paginate @requests, window: 1 %>
@@ -1,32 +0,0 @@
1
- module WechatHelpers
2
-
3
- def wechat_raw_config_js(debug: false, apis: [])
4
- page_url = controller.request.original_url
5
- page_url.delete_suffix!('#')
6
- js_hash = Wechat::Signature.signature(current_wechat_app.jsapi_ticket, page_url)
7
- logger.debug " \e[35m=====> Current page is: #{page_url}, Hash: #{js_hash.inspect} <=====\e[0m"
8
-
9
- <<-WECHAT_CONFIG_JS
10
- wx.config({
11
- debug: #{debug},
12
- appId: '#{current_wechat_app.appid}',
13
- timestamp: '#{js_hash[:timestamp]}',
14
- nonceStr: '#{js_hash[:noncestr]}',
15
- signature: '#{js_hash[:signature]}',
16
- jsApiList: ['#{apis.join("','")}']
17
- })
18
- WECHAT_CONFIG_JS
19
- rescue => e
20
- logger.debug e.message
21
- end
22
-
23
- def wechat_config_js(debug: false, apis: [])
24
- config_js = wechat_raw_config_js(debug: debug, apis: apis)
25
- javascript_tag config_js, type: 'application/javascript', nonce: true
26
- end
27
-
28
- end
29
-
30
- ActiveSupport.on_load :action_view do
31
- include WechatHelpers
32
- end