educode_sales 0.5.3 → 0.5.7

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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/educode_sales/businesses_controller.rb +3 -0
  3. data/app/controllers/educode_sales/follow_ups_controller.rb +57 -0
  4. data/app/controllers/educode_sales/home_controller.rb +11 -0
  5. data/app/controllers/educode_sales/sale_trends_controller.rb +108 -84
  6. data/app/controllers/educode_sales/teachers_controller.rb +36 -14
  7. data/app/controllers/educode_sales/upload_files_controller.rb +3 -3
  8. data/app/models/educode_sales/teacher.rb +2 -1
  9. data/app/models/educode_sales/teacher_assign_follow.rb +6 -0
  10. data/app/views/educode_sales/activities/index.html.erb +4 -5
  11. data/app/views/educode_sales/activities/show_teachers.html.erb +1 -1
  12. data/app/views/educode_sales/businesses/_follows.html.erb +233 -0
  13. data/app/views/educode_sales/businesses/edit_follow_record.html.erb +59 -9
  14. data/app/views/educode_sales/businesses/file.html.erb +2 -4
  15. data/app/views/educode_sales/businesses/index.html.erb +137 -62
  16. data/app/views/educode_sales/businesses/index.json.jbuilder +1 -0
  17. data/app/views/educode_sales/businesses/new_follow_record.html.erb +58 -7
  18. data/app/views/educode_sales/businesses/show_follow.html.erb +9 -9
  19. data/app/views/educode_sales/businesses/show_follow_record.html.erb +1 -1
  20. data/app/views/educode_sales/businesses/time_line.html.erb +1 -1
  21. data/app/views/educode_sales/follow_ups/index.json.jbuilder +19 -0
  22. data/app/views/educode_sales/home/sales_place.json.jbuilder +9 -0
  23. data/app/views/educode_sales/places/index.html.erb +14 -4
  24. data/app/views/educode_sales/places/index.json.jbuilder +7 -1
  25. data/app/views/educode_sales/recycles/index.html.erb +1 -1
  26. data/app/views/educode_sales/sale_trends/trends.html.erb +56 -20
  27. data/app/views/educode_sales/sales/operations.html.erb +3 -1
  28. data/app/views/educode_sales/teachers/course_list.json.jbuilder +1 -1
  29. data/app/views/educode_sales/teachers/edit.html.erb +53 -7
  30. data/app/views/educode_sales/teachers/index.html.erb +36 -2
  31. data/app/views/educode_sales/teachers/index.json.jbuilder +4 -1
  32. data/app/views/educode_sales/teachers/new.html.erb +55 -17
  33. data/config/routes.rb +1 -0
  34. data/db/migrate/20211201023750_create_educode_sales_teacher_assign_follows.rb +11 -0
  35. data/lib/educode_sales/version.rb +1 -1
  36. metadata +7 -2
@@ -38,6 +38,12 @@
38
38
  <input type="text" class="layui-input" id="time" placeholder="请选择时间" autocomplete="off" name="regist_at">
39
39
  </div>
40
40
  </div>
41
+ <div class="layui-inline">
42
+ <label class="layui-form-label">注册状态</label>
43
+ <div class="layui-input-inline">
44
+ <%= select_tag "status", options_for_select([["已注册","1"],["未注册","0"]]), { include_blank: true } %>
45
+ </div>
46
+ </div>
41
47
  <div class="layui-inline">
42
48
  <label class="layui-form-label">区域</label>
43
49
  <div class="layui-input-inline">
@@ -50,6 +56,12 @@
50
56
  <input type="text" class="layui-input" id="date" name="date" autocomplete="off" placeholder=" - ">
51
57
  </div>
52
58
  </div>
59
+ <div class="layui-inline">
60
+ <label class="layui-form-label">教研助理</label>
61
+ <div class="layui-input-inline">
62
+ <%= select_tag "assist", options_for_select(@staffs, params[:assist]), { 'lay-filter': 'assist', include_blank: true } %>
63
+ </div>
64
+ </div>
53
65
 
54
66
  <div class="layui-inline">
55
67
  <button type="reset" class="layui-btn layui-btn-primary" lay-submit lay-filter="reset_business_search">重置
@@ -66,7 +78,7 @@
66
78
  <span class="table-label">教师列表</span>
67
79
  <% if can? :create, EducodeSales::Teacher %>
68
80
  <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn pull-right" lay-event="import">导入数据</button>
69
- <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn pull-right" lay-event="add">添加</button>
81
+ <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn pull-right" lay-event="add">添加老师</button>
70
82
  <% end %>
71
83
  <!-- <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn pull-right" lay-event="search_new"> 搜索添加 -->
72
84
  </button>
@@ -86,7 +98,7 @@
86
98
  <%# if can? :destroy, EducodeSales::Teacher %>
87
99
  <!-- <a class="layui-btn layui-btn-xs layui-btn-danger data-count-delete" lay-event="delete">删除</a>-->
88
100
  <%# end %>
89
- <% if can? :add_follow, EducodeSales::Teacher %>
101
+ <% if can? :create, EducodeSales::TeacherFollow %>
90
102
  <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="add_event">添加跟进记录</a>
91
103
  <% end %>
92
104
  <% if @more %>
@@ -230,6 +242,26 @@
230
242
  width: 120,
231
243
  title: '注册时间',
232
244
  },
245
+ {
246
+ field: 'last_login_on',
247
+ width: 120,
248
+ title: '最近登录',
249
+ },
250
+ {
251
+ field: 'created_at',
252
+ width: 120,
253
+ title: '添加时间',
254
+ },
255
+ {
256
+ field: 'wechat',
257
+ width: 120,
258
+ title: '微信号',
259
+ },
260
+ {
261
+ field: 'teacher_assist',
262
+ width: 120,
263
+ title: '教研助理',
264
+ },
233
265
  {
234
266
  title: '操作',
235
267
  minWidth: 170,
@@ -372,7 +404,9 @@
372
404
  name: "",
373
405
  professional_title: "",
374
406
  regist_at: "",
407
+ status: "",
375
408
  school: "",
409
+ assist: "",
376
410
  teacher_source: ""
377
411
  })
378
412
  return false;
@@ -19,8 +19,11 @@ json.data do
19
19
  json.actives d.actives
20
20
  json.students d.students_count
21
21
  json.regist_at d.user.present? ? d.user.created_on.to_s(:date) : ''
22
+ json.last_login_on (d.user.present? && d.user.last_login_on.present?) ? d.user.last_login_on.to_s(:date) : ''
22
23
  json.teacher_used d.teacher_used
23
-
24
+ json.wechat d.wechat
25
+ json.created_at d.created_at.to_s(:date)
26
+ json.teacher_assist d.teacher_assign_follows.map{|t| t.staff.user.real_name}.join(',')
24
27
  teacher_follows_count += d.teacher_follows_count
25
28
  courses_counts += d.courses_count
26
29
  end
@@ -5,6 +5,8 @@
5
5
  <label class="layui-form-label required">姓名</label>
6
6
  <div class="layui-input-block" id="add_teacher" style="width: 400px"></div>
7
7
  </div>
8
+ </div>
9
+ <div class="layui-block">
8
10
  <div class="layui-inline">
9
11
  <label class="layui-form-label required">单位/部门</label>
10
12
  <div class="layui-input-block" id="add_department" style="width: 400px"></div>
@@ -12,34 +14,38 @@
12
14
  </div>
13
15
  <div class="layui-block">
14
16
  <div class="layui-inline">
15
- <label class="layui-form-label required">职称</label>
17
+ <label class="layui-form-label ">职称</label>
16
18
  <div class="layui-input-block">
17
- <%= select_tag "professional_title", options_for_select(['教授', '研究员', '副教授', '副研究员', '讲师', '助理研究员', '助理教授'], @person&.professional_title), { include_blank: true, "lay-verify": "required"} %>
19
+ <%= select_tag "professional_title", options_for_select(['教授', '研究员', '副教授', '副研究员', '讲师', '助理研究员', '助理教授'], @person&.professional_title), { include_blank: true} %>
18
20
  </div>
19
21
  </div>
20
- </div>
21
- <div class="layui-block">
22
22
  <div class="layui-inline">
23
- <label class="layui-form-label required">职务</label>
23
+ <label class="layui-form-label ">职务</label>
24
24
  <div class="layui-input-block" style="width: 188px;">
25
- <input type="text" name="job" autocomplete="off" lay-verify="required" class="layui-input" placeholder="请输入职务">
25
+ <input type="text" name="job" autocomplete="off" class="layui-input" placeholder="请输入职务">
26
26
  </div>
27
27
  </div>
28
28
  </div>
29
29
  <div class="layui-block">
30
30
  <div class="layui-inline">
31
- <label class="layui-form-label required">来源</label>
31
+ <label class="layui-form-label ">来源</label>
32
+ <div class="layui-input-block">
33
+ <%= select_tag "source_id", options_for_select(EducodeSales::Common.where(clazz: 'teacher_source').pluck(:name, :id)), { include_blank: true } %>
34
+ </div>
35
+ </div>
36
+ <div class="layui-inline">
37
+ <label class="layui-form-label ">微信号</label>
32
38
  <div class="layui-input-block">
33
- <%= select_tag "source_id", options_for_select(EducodeSales::Common.where(clazz: 'teacher_source').pluck(:name, :id)), { include_blank: true, "lay-verify": "required" } %>
39
+ <input type="text" name="wechat" autocomplete="off" class="layui-input" placeholder="请输入微信号">
34
40
  </div>
35
41
  </div>
36
42
  </div>
37
-
38
- <!-- <br>
39
- <div class="layui-inline">
40
- <label class="layui-form-label ">账号</label>
41
- <div class="layui-input-block" id="search_teachers" style="width: 300px;"></div>
42
- </div> -->
43
+ <div class="layui-form-item">
44
+ <label class="layui-form-label">教研助理</label>
45
+ <div class="layui-input-inline" style="z-index: 100">
46
+ <div id="teacher_assist" style="width: 400px;"></div>
47
+ </div>
48
+ </div>
43
49
  <div class="layui-form-item m-t-20">
44
50
  <div class="layui-input-block">
45
51
  <button type="submit" class="layui-btn layui-btn-normal" lay-submit lay-filter="create_teachers"
@@ -47,9 +53,6 @@
47
53
  </button>
48
54
  </div>
49
55
  </div>
50
- <!-- <div class="layui-block">
51
- <button class="layui-btn layui-btn-normal" lay-submit lay-filter="create_teachers">提交</button>
52
- </div> -->
53
56
  </div>
54
57
  </div>
55
58
  <script>
@@ -58,12 +61,42 @@
58
61
  layer = layui.layer,
59
62
  table = layui.table,
60
63
  laytpl = layui.laytpl,
64
+ xmSelect = layui.xmSelect,
61
65
  request = layui.request,
62
66
  $ = layui.$;
63
67
  selectInput = layui.selectInput;
64
68
 
65
69
  form.render();
66
70
 
71
+ var teacher_assist_list = xmSelect.render({
72
+ el: '#teacher_assist',
73
+ remoteSearch: true,
74
+ clickClose: true,
75
+ delay: 1000,
76
+ paging: true,
77
+ pageRemote: true,
78
+ filterable: true,
79
+ remoteMethod: function (val, cb, show, pageIndex) {
80
+ $.ajax( '/missions/sales_staff?teacher_assist=true', {
81
+ method: 'get',
82
+ data: {
83
+ q: val,
84
+ page: pageIndex
85
+ },
86
+ dataType: 'json',
87
+ success: function (res) {
88
+ var data = res.data;
89
+ if (res.code == 0) {
90
+ cb(res.data, res.count);
91
+ } else {
92
+ layer.msg(res.msg, {time: 2000, icon: 2, shade: 0.01});
93
+ }
94
+
95
+ }
96
+ })
97
+ }
98
+ })
99
+
67
100
  var add_teacher = selectInput.render({
68
101
  elem: '#add_teacher',
69
102
  name: 'name', // 渲染的input的name值
@@ -141,6 +174,11 @@
141
174
 
142
175
  //监听提交
143
176
  form.on('submit(create_teachers)', function (data) {
177
+ var teacher_assist = [];
178
+ teacher_assist_list.getValue().forEach(function(d) {
179
+ teacher_assist.push(d.value);
180
+ })
181
+ data.field.teacher_assist = teacher_assist;
144
182
  data.field.user_id = user_id;
145
183
  data.field.department_id = department_id;
146
184
  data.field.activity_id = parent.activity_id;
data/config/routes.rb CHANGED
@@ -11,6 +11,7 @@ EducodeSales::Engine.routes.draw do
11
11
  get :search, to: "home#search"
12
12
  get :no_permission, to: "home#no_permission"
13
13
  get :sales_staff, to: "home#sales_staff"
14
+ get :sales_place, to: "home#sales_place"
14
15
 
15
16
  resources :sessions do
16
17
  end
@@ -0,0 +1,11 @@
1
+ class CreateEducodeSalesTeacherAssignFollows < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :educode_sales_teacher_assign_follows do |t|
4
+ t.references :staff
5
+ t.references :teacher
6
+
7
+ t.timestamps
8
+ end
9
+ add_column :educode_sales_teachers, :wechat, :string
10
+ end
11
+ end
@@ -1,3 +1,3 @@
1
1
  module EducodeSales
2
- VERSION = '0.5.3'
2
+ VERSION = '0.5.7'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: educode_sales
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.5.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - anke1460
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-11-19 00:00:00.000000000 Z
11
+ date: 2021-12-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -192,12 +192,14 @@ files:
192
192
  - app/models/educode_sales/sale_trend.rb
193
193
  - app/models/educode_sales/staff.rb
194
194
  - app/models/educode_sales/teacher.rb
195
+ - app/models/educode_sales/teacher_assign_follow.rb
195
196
  - app/models/educode_sales/teacher_follow.rb
196
197
  - app/views/educode_sales/activities/edit.html.erb
197
198
  - app/views/educode_sales/activities/index.html.erb
198
199
  - app/views/educode_sales/activities/index.json.jbuilder
199
200
  - app/views/educode_sales/activities/new.html.erb
200
201
  - app/views/educode_sales/activities/show_teachers.html.erb
202
+ - app/views/educode_sales/businesses/_follows.html.erb
201
203
  - app/views/educode_sales/businesses/edit.html.erb
202
204
  - app/views/educode_sales/businesses/edit_follow_record.html.erb
203
205
  - app/views/educode_sales/businesses/edit_plan.html.erb
@@ -218,10 +220,12 @@ files:
218
220
  - app/views/educode_sales/commons/index.json.jbuilder
219
221
  - app/views/educode_sales/commons/new.html.erb
220
222
  - app/views/educode_sales/commons/show.json.jbuilder
223
+ - app/views/educode_sales/follow_ups/index.json.jbuilder
221
224
  - app/views/educode_sales/follow_ups/money_plans.json.jbuilder
222
225
  - app/views/educode_sales/follow_ups/teachers.json.jbuilder
223
226
  - app/views/educode_sales/home/index.html.erb
224
227
  - app/views/educode_sales/home/no_permission.html.erb
228
+ - app/views/educode_sales/home/sales_place.json.jbuilder
225
229
  - app/views/educode_sales/home/sales_staff.json.jbuilder
226
230
  - app/views/educode_sales/home/search.json.jbuilder
227
231
  - app/views/educode_sales/home/search_edu_teacher.json.jbuilder
@@ -377,6 +381,7 @@ files:
377
381
  - db/migrate/20211022085324_add_teacher_used_to_teachers.rb
378
382
  - db/migrate/20211102085743_add_bidded_date_educode_sales_follow_ups.rb
379
383
  - db/migrate/20211109015617_create_educode_sales_recycles.rb
384
+ - db/migrate/20211201023750_create_educode_sales_teacher_assign_follows.rb
380
385
  - lib/educode_sales.rb
381
386
  - lib/educode_sales/engine.rb
382
387
  - lib/educode_sales/version.rb