educode_sales 0.5.9 → 0.6.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 82398cf1df1cb40215b1632031edfd6b6ffa4dfed2ff1c8f86c624fa938c917c
4
- data.tar.gz: b11d133013cc1dfe416f77b26255709fb24b33061568380abf625012b13b4ee0
3
+ metadata.gz: a02b261726217306908f432883b2fc65fbaafb7f5cca5011756ac826bed71729
4
+ data.tar.gz: 9683550674255290ce92aa546115e5c12737d6f998b489ee94d2342b061fde33
5
5
  SHA512:
6
- metadata.gz: ee3920c928e0d06ba4785d0a5ab091b9833d94c42eb881e879c378d36d71f6c75985299b225c198b9abf0f2d5d9a6e133a5afeb7147c87e6523bcde609f07f30
7
- data.tar.gz: 14a4f1e5e7f23f94279b9023656d170fed8cf6b3d1a6a034b71cca658bc4d0ab13c27f8d82b589a747f02fca5f53fda1a224c7fb76d1a7f25db4552b2a9ac53d
6
+ metadata.gz: b6b1540d81940940df2d890b102a0aa45459b11b094951b59ac659029e5d7bae03b2682ccfc8d3a7ed70fbf319f2b714840dd5943b605e4f4d28fb863984cb8d
7
+ data.tar.gz: 93334a9161ed506b31284db48649d0ef5db377cbb03f3a464637c10f8fbbbca19dd4d243b3f1ba0192540d3cc42e6fe7acd52337029c43a10ee10a497c6d3c63
@@ -1,14 +1,16 @@
1
1
  <div class="layuimini-main">
2
2
  <form class="layui-form layuimini-form" action="">
3
+ <div class="layui-form-item" style="padding: 25px">
3
4
  <div class="layui-form-item" style="padding: 25px">
4
5
  <div class="layui-inline">
5
6
  <label class="layui-form-label required">部门名称</label>
6
- <div class="layui-input-block">
7
+ <div class="layui-input-block" style="width: 300px;">
7
8
  <input type="text" name="department_name" required lay-verify="required" autocomplete="off" placeholder="请输入"
8
9
  class="layui-input" id="inputFocus" value="<%=@department.name %>">
9
10
  </div>
10
11
  </div>
11
- <div class="layui-inline" style="padding-left: 30px">
12
+ </div>
13
+ <div class="layui-form-item" style="padding-left: 130px">
12
14
  <button type="submit" class="layui-btn layui-btn-normal" lay-submit lay-filter="data-edit">提交
13
15
  </button>
14
16
  </div>
@@ -1,18 +1,18 @@
1
1
  <h1 class="text-center" style="padding: 25px"><%=@school.name %></h1>
2
- <form class="layui-form " action="">
3
- <div class="layui-form-item layui-form-text">
4
- <label class="layui-form-label">跟进内容</label>
2
+ <form class="layui-form layuimini-form " action="">
3
+ <div class="layui-form-item layui-form-text" style="padding-right: 30px">
4
+ <label class="layui-form-label required">跟进内容</label>
5
5
  <div class="layui-input-block">
6
- <textarea name="content" placeholder="请输入跟进内容" class="layui-textarea" ><%=@follow_up.content %></textarea>
6
+ <textarea name="content" placeholder="请输入跟进内容" lay-verify="required" style="height: 200px" class="layui-textarea" ><%=@follow_up.content %></textarea>
7
7
  </div>
8
8
  </div>
9
- <div class="layui-inline">
9
+ <div class="layui-form-item ">
10
10
  <label class="layui-form-label">跟进部门</label>
11
- <div class="layui-input-inline">
11
+ <div class="layui-input-inline" style="width: 300px;">
12
12
  <%= select_tag "department_id",options_for_select(@school.departments.pluck(:name, :id),@follow_up.department_id)%>
13
13
  </div>
14
14
  </div>
15
- <div class="layui-inline" style="padding-left: 50px">
15
+ <div class="layui-form-item " style="padding-left: 110px">
16
16
  <button type="submit" class="layui-btn layui-btn-normal" lay-submit lay-filter="edit_follow_up">提交
17
17
  </button>
18
18
  </div>
@@ -16,7 +16,7 @@
16
16
  <div class="layui-inline">
17
17
  <label class="layui-form-label">负责人</label>
18
18
  <div class="layui-input-inline">
19
- <%= select_tag "staff_id", options_for_select(@staffs), { include_blank: true } %>
19
+ <%= select_tag "staff_id", options_for_select(@staffs,params[:staff_id]), { include_blank: true } %>
20
20
  </div>
21
21
  </div>
22
22
  <div class="layui-inline">
@@ -29,7 +29,7 @@
29
29
  <div class="layui-inline">
30
30
  <button type="reset" class="layui-btn layui-btn-primary" lay-submit lay-filter="reset_business_search">重置
31
31
  </button>
32
- <button type="submit" class="layui-btn layui-btn-primary" lay-submit lay-filter="search_teachers">搜 索
32
+ <button type="submit" class="layui-btn layui-btn-primary" id="search_bt" lay-submit lay-filter="search_teachers">搜 索
33
33
  </button>
34
34
  </div>
35
35
  </div>
@@ -87,6 +87,13 @@
87
87
 
88
88
  var laydate = layui.laydate;
89
89
 
90
+ function hn(){
91
+ $("#search_bt").trigger("click");
92
+ }
93
+ $(document).ready(function(){
94
+ window.onload=hn;
95
+ });
96
+
90
97
  laydate.render({
91
98
  elem: '#date',
92
99
  range: true
@@ -114,7 +121,6 @@
114
121
  },
115
122
  {
116
123
  field: 'name',
117
- width: 160,
118
124
  title: '客户名称',
119
125
  templet: "#name"
120
126
  },
@@ -143,7 +149,7 @@
143
149
  },
144
150
  {
145
151
  field: 'last_follow_time',
146
- width: 160,
152
+ width: 170,
147
153
  title: '最后跟进时间',
148
154
  },
149
155
  {
@@ -153,7 +159,7 @@
153
159
  },
154
160
  {
155
161
  title: '操作',
156
- minWidth: 170,
162
+ width: 300,
157
163
  toolbar: '#currentTableBar',
158
164
  align: "center",
159
165
  fixed: 'right'
@@ -251,11 +257,12 @@
251
257
  name: "",
252
258
  professional_title: "",
253
259
  regist_at: "",
260
+ staff_id: "",
254
261
  status: "",
255
262
  school: "",
256
263
  assist: "",
257
264
  teacher_source: ""
258
- })
265
+ });
259
266
  return false;
260
267
  });
261
268
  /**
@@ -4,8 +4,8 @@ json.data do
4
4
  business_ids = EducodeSales::Business.where(department_id: department_ids).ids
5
5
  follow_ups = EducodeSales::FollowUp.where(business_id: business_ids)
6
6
  customer_follows = EducodeSales::CustomerFollow.where(school_id: d.id)
7
- a_last_follow_time = follow_ups.last&.created_at&.to_s(:date)
8
- b_last_follow_time = customer_follows.last&.created_at&.to_s(:date)
7
+ a_last_follow_time = follow_ups.last&.created_at&.to_s
8
+ b_last_follow_time = customer_follows.last&.created_at&.to_s
9
9
  if a_last_follow_time.present? && b_last_follow_time.present?
10
10
  json.last_follow_time a_last_follow_time < b_last_follow_time ? b_last_follow_time : a_last_follow_time
11
11
  else
@@ -1,14 +1,16 @@
1
1
  <div class="layuimini-main">
2
2
  <form class="layui-form layuimini-form" action="">
3
+ <div class="layui-form-item" style="padding: 25px">
3
4
  <div class="layui-form-item" style="padding: 25px">
4
5
  <div class="layui-inline">
5
6
  <label class="layui-form-label required">部门名称</label>
6
- <div class="layui-input-block">
7
+ <div class="layui-input-block" style="width: 300px;">
7
8
  <input type="text" name="department_name" required lay-verify="required" autocomplete="off" placeholder="请输入"
8
9
  class="layui-input" id="inputFocus">
9
10
  </div>
10
11
  </div>
11
- <div class="layui-inline" style="padding-left: 30px">
12
+ </div>
13
+ <div class="layui-form-item" style="padding-left: 130px">
12
14
  <button type="submit" class="layui-btn layui-btn-normal" lay-submit lay-filter="data-reset-btn">提交
13
15
  </button>
14
16
  </div>
@@ -1,18 +1,18 @@
1
1
  <h1 class="text-center" style="padding: 25px"><%=@school.name %></h1>
2
- <form class="layui-form " action="">
3
- <div class="layui-form-item layui-form-text">
4
- <label class="layui-form-label">跟进内容</label>
2
+ <form class="layui-form layuimini-form " action="">
3
+ <div class="layui-form-item layui-form-text" style="padding-right: 30px">
4
+ <label class="layui-form-label required" >跟进内容</label>
5
5
  <div class="layui-input-block">
6
- <textarea name="content" placeholder="请输入跟进内容" class="layui-textarea"></textarea>
6
+ <textarea name="content" placeholder="请输入跟进内容" lay-verify="required" style="height: 200px" class="layui-textarea"></textarea>
7
7
  </div>
8
8
  </div>
9
- <div class="layui-inline">
10
- <label class="layui-form-label required">跟进部门</label>
11
- <div class="layui-input-inline">
12
- <%= select_tag "department_id",options_for_select(@school.departments.pluck(:name, :id)), {"lay-verify": "required", include_blank: true}%>
9
+ <div class="layui-form-item ">
10
+ <label class="layui-form-label ">跟进部门</label>
11
+ <div class="layui-input-inline" style="width: 300px">
12
+ <%= select_tag "department_id",options_for_select(@school.departments.pluck(:name, :id)), { include_blank: true}%>
13
13
  </div>
14
14
  </div>
15
- <div class="layui-inline" style="padding-left: 50px">
15
+ <div class="layui-form-item " style="padding-left: 110px">
16
16
  <button type="submit" class="layui-btn layui-btn-normal" lay-submit lay-filter="add_follow_up">提交
17
17
  </button>
18
18
  </div>
@@ -54,7 +54,7 @@
54
54
  },
55
55
  {
56
56
  title: '操作',
57
- minWidth: 190,
57
+ width: 190,
58
58
  toolbar: '#currentTableBar_follow',
59
59
  align: "center",
60
60
  fixed: 'right'
@@ -251,7 +251,7 @@
251
251
  },
252
252
  {
253
253
  field: 'created_at',
254
- width: 300,
254
+ width: 180,
255
255
  title: '时间'
256
256
  },
257
257
  {
@@ -266,11 +266,11 @@
266
266
  },
267
267
  {
268
268
  field: 'content',
269
- width: 100,
270
269
  title: '跟进内容'
271
270
  },
272
271
  {
273
272
  title: '操作',
273
+ width: 300,
274
274
  toolbar: '#currentTableBar1234',
275
275
  align: "center"
276
276
  }
@@ -3,7 +3,7 @@ json.data do
3
3
  json.id d.id
4
4
  json.created_at d.created_at.to_s
5
5
  json.staff d.staff.user.real_name
6
- json.department Department.find(d.department_id)&.name
6
+ json.department d.department_id.present? ? Department.find(d.department_id)&.name : ''
7
7
  json.content d.content
8
8
  json.is_latest d.id == @latest.id
9
9
  end
@@ -44,6 +44,11 @@
44
44
  <a href="/missions/businesses?clazz_id={{d.o_clazz_id}}&staff_id={{d.id}}">{{d.business_o}}</a>
45
45
  </div>
46
46
  </script>
47
+ <script type="text/html" id="school_count">
48
+ <div class="layui-text">
49
+ <a href="/missions/customers?staff_id={{d.id}}">{{d.school_count}}</a>
50
+ </div>
51
+ </script>
47
52
  <script>
48
53
  layui.use('table', function () {
49
54
  var form = layui.form,
@@ -73,6 +78,7 @@
73
78
  }, {
74
79
  field: 'area',
75
80
  title: '负责区域',
81
+ width: 100,
76
82
  templet:'<div><span title="{{d.area}}">{{d.area}}</span></div>'
77
83
  }, {
78
84
  field: 'business_a',
@@ -132,30 +138,36 @@
132
138
  {
133
139
  field: 'school_count',
134
140
  title: '负责学校数',
135
- totalRow:'{{ parseInt(d.TOTAL_NUMS) }}',
141
+ sort:true,
142
+ totalRow:true,
143
+ templet: "#school_count",
136
144
  width: 120
137
145
  },
138
146
  {
139
147
  field: 'follow_school_count',
140
148
  title: '跟进学校数',
149
+ sort:true,
141
150
  totalRow:'{{ parseInt(d.TOTAL_NUMS) }}',
142
151
  width: 120
143
152
  },
144
153
  {
145
154
  field: 'follow_school_counts',
146
155
  title: '跟进学校次数',
156
+ sort:true,
147
157
  totalRow:'{{ parseInt(d.TOTAL_NUMS) }}',
148
- width: 120
158
+ width: 130
149
159
  },
150
160
  {
151
161
  field: 'follow_school_rate',
152
162
  title: '学校覆盖率',
163
+ sort:true,
153
164
  totalRow:'{{ parseInt(d.TOTAL_NUMS) }}',
154
165
  width: 120
155
166
  },
156
167
  {
157
168
  field: 'follow_department_rate',
158
169
  title: '学院覆盖率',
170
+ sort:true,
159
171
  totalRow:'{{ parseInt(d.TOTAL_NUMS) }}',
160
172
  width: 120
161
173
  },
@@ -4,6 +4,7 @@ businesses_c_count = 0
4
4
  businesses_d_count = 0
5
5
  businesses_e_count = 0
6
6
  businesses_o_count = 0
7
+ school_counts = 0
7
8
  area_ids = EducodeSales::Common.where(clazz: 'area').ids.sort.to_s
8
9
  json.data do
9
10
  json.array! @staffs do |d|
@@ -33,9 +34,11 @@ json.data do
33
34
  business_d = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @d_clazz&.id).count
34
35
  business_e = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @e_clazz&.id).count
35
36
  business_o = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @o_clazz&.id).count
37
+ school_count = EducodeSales::CustomerExtension.where(customer_staff_id: d.id).size
36
38
  json.goal @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id != ? AND educode_sales_follow_ups.stage_id in (?)", @x, @step_ids).sum(:total_amount).round(2)
37
39
  json.return_money @businesses.joins(last_follow_up: :money_plans).where("educode_sales_follow_ups.clazz_id != ?", @x).where.not("educode_sales_money_plans.clazz!= ?", 1).sum(:amount).round(2)
38
- json.school_count EducodeSales::CustomerExtension.where(customer_staff_id: d.id).size
40
+ json.school_count school_count
41
+ # json.follow_school_counts EducodeSales::CustomerFollow.where(staff_id: d.id).size + EducodeSales::FollowUp.where(staff_id: d.id).size
39
42
  else
40
43
  business_a = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @a_clazz&.id).where("educode_sales_follow_ups.year = ?", @year).count
41
44
  business_b = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @b_clazz&.id).where("educode_sales_follow_ups.year = ?", @year).count
@@ -43,9 +46,11 @@ json.data do
43
46
  business_d = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @d_clazz&.id).where("educode_sales_follow_ups.year = ?", @year).count
44
47
  business_e = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @e_clazz&.id).where("educode_sales_follow_ups.year = ?", @year).count
45
48
  business_o = @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id = ?", @o_clazz&.id).where("educode_sales_follow_ups.year = ?", @year).count
49
+ school_count = EducodeSales::CustomerExtension.where(customer_staff_id: d.id).size
46
50
  json.goal @businesses.joins("JOIN educode_sales_follow_ups on educode_sales_follow_ups.id = educode_sales_businesses.last_follow_up_id").where("educode_sales_follow_ups.clazz_id != ? AND educode_sales_follow_ups.stage_id in (?)", @x, @step_ids).where("educode_sales_follow_ups.bidded_date >= ? AND educode_sales_follow_ups.bidded_date <= ?", "#{@year}-01-01", "#{@year}-12-31").sum(:total_amount).round(2)
47
51
  json.return_money @businesses.joins(last_follow_up: :money_plans).where("educode_sales_follow_ups.clazz_id != ?", @x).where.not("educode_sales_money_plans.clazz!= ?", 1).where("educode_sales_money_plans.date_at >= ? AND educode_sales_money_plans.date_at <= ? ", "#{@year}-01-01 00:00:00", "#{@year}-12-31 23:59:59").sum(:amount).round(2)
48
- json.school_count EducodeSales::CustomerExtension.where(customer_staff_id: d.id).size
52
+ json.school_count school_count
53
+ # json.follow_school_counts EducodeSales::CustomerFollow.where(staff_id: d.id).size + EducodeSales::FollowUp.where(staff_id: d.id).size
49
54
  end
50
55
 
51
56
  json.business_a business_a
@@ -67,6 +72,7 @@ json.data do
67
72
  businesses_d_count += business_d
68
73
  businesses_e_count += business_e
69
74
  businesses_o_count += business_o
75
+ school_counts += school_count
70
76
  end
71
77
  end
72
78
 
@@ -77,6 +83,7 @@ json.totalRow do
77
83
  json.business_d businesses_d_count.to_s
78
84
  json.business_e businesses_e_count.to_s
79
85
  json.business_o businesses_o_count.to_s
86
+ json.school_count school_counts.to_s
80
87
  end
81
88
  json.code 0
82
89
  json.count @staffs.total_count
@@ -1,3 +1,3 @@
1
1
  module EducodeSales
2
- VERSION = '0.5.9'
2
+ VERSION = '0.6.0'
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.9
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - anke1460
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-16 00:00:00.000000000 Z
11
+ date: 2021-12-17 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails