educode_sales 0.7.9 → 0.8.1

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: e9403e25df2848c96f744c79481e62ea3ebe44c6da7d265bd1e107885c13b108
4
- data.tar.gz: 994b9567c3b88d6a804b43484447932725dcfe5d3c0f1e6113233c309a1f1f62
3
+ metadata.gz: cb565ace898040e094fd5bb5659ba71b471f4d3c6d718f5b0d52c8d0b3b78329
4
+ data.tar.gz: 5c235c5d885f53def688cf0cf1f6bbfb8a33de88de4811249f54fb69cab34665
5
5
  SHA512:
6
- metadata.gz: 202b2c2d096f7b8d949658605ed1eb1d9b288a2764ee8144e83efb60b7c718720471f3acec0f5a818302798550eef40c53b1642421465bb3370dec1160272fee
7
- data.tar.gz: d5cd014d540019070da9da22c4b7439c4a71b242d6841d34494fdff9af0b049e9d14e22200af16b8c5a32f06bdd6ba9c18bb7b1c21a8c8a78c94f7ec446f7d7f
6
+ metadata.gz: 2471c1f71f7e9bd3a724a932462fec5eeac8a292d1e7c25938120fbbe25d1c2063d381aa4cca78d8eaa1519b2690b57b02b4e8f1392c28c387f7c4cfc13d9b2a
7
+ data.tar.gz: 7fe56251df0ff25212c1a3bbc5b9ce9f4c0f418d5e445e4b90eca2ff324ce12f9cd3f4fbfe3d712610dfb513531977713a7e23af5485944277c4b838539160d1
@@ -27,6 +27,30 @@ module EducodeSales
27
27
  end
28
28
  end
29
29
 
30
+ def filter
31
+ filter = Filter.find_or_create_by(staff_id: @current_admin.id, filter_type: params[:type])
32
+ params[:hidden] = params[:hidden] == "true" ? "0":"1"
33
+ a = ''
34
+ b = []
35
+ filter.filter_data&.split(",")&.each do |d|
36
+ b << d[0..-2]
37
+ if d[0..-2] == params[:name]
38
+ d[-1] = params[:hidden]
39
+ end
40
+ a = a + d + ','
41
+ end
42
+ if b.include?(params[:name]) == false
43
+ p "include"
44
+ a = a + params[:name] + params[:hidden]
45
+ p a
46
+ end
47
+ filter.filter_data = a
48
+ filter.save
49
+ render_success
50
+ end
51
+
52
+
53
+
30
54
  rescue_from CanCan::AccessDenied do |exception|
31
55
  redirect_to no_permission_path
32
56
  end
@@ -15,9 +15,20 @@ module EducodeSales
15
15
  gon.export_menus << { title: '导出到Csv文件', event: 'export_csv' }
16
16
  gon.export_menus << { title: '导出到Excel文件', event: 'export_excel' }
17
17
  # index页面new弹出层下使用
18
- gon.demo = Staff.joins(:user).where(job_type: common.id).map do |d|
18
+ gon.staff_ids = Staff.joins(:user).where(job_type: common.id).map do |d|
19
19
  {value: d.id, name: d.user.real_name }
20
20
  end
21
+ filter = Filter.find_or_create_by(staff_id: @current_admin.id, filter_type: "assessments_setup")
22
+ gon.filter = {}
23
+ filter.filter_data&.split(",")&.each do |d|
24
+ m = d[0..-2]
25
+ # gon.filter[:"#{m}"] = d[-1].to_i # 前端的hide注意时int类型 string类型 获取不到
26
+ gon.filter["#{m}"] = d[-1].to_i # 前端的hide注意时int类型 string类型 获取不到
27
+ end
28
+ # p gon.filter
29
+ # gon.filter2 = {:username => false }
30
+ # gon.filter3 = '1'
31
+ # p gon.filter
21
32
  end
22
33
  format.json do
23
34
  @year = params[:q].present? && params[:q][:assessment_year].present? ? params[:q][:assessment_year]:'2022'
@@ -37,13 +48,15 @@ module EducodeSales
37
48
  demo = AssessmentsSetting.new(params_create)
38
49
  demo.user_id = current_user.user_id
39
50
  demo.assessment_year = "#{params[:assessment_year]}-01-01"
51
+ AssessmentsSetting.transaction do
40
52
  params[:staffs_ids].split(",").each do |d|
41
53
  staff = demo.dup
42
54
  staff.staff_id = d.to_i
43
55
  staff.save
44
56
  end
57
+ end
45
58
  render_success
46
- rescue => e
59
+ rescue OneError => e
47
60
  render_failure '增加数据错误'
48
61
  end
49
62
  end
@@ -83,8 +96,8 @@ module EducodeSales
83
96
  assessment = AssessmentsSetting.find(params[:id])
84
97
  assessment.destroy
85
98
  render_success
86
- rescue ActiveRecord::DeleteRestrictionError => e
87
- render_failure '渠道下已有关联数据产生,暂不能删除'
99
+ rescue OneError => e
100
+ render_failure '暂不能删除'
88
101
  end
89
102
  end
90
103
 
@@ -109,14 +122,13 @@ module EducodeSales
109
122
  # common = Common.find_by(clazz: 'staff_type', name: '销售')
110
123
  # @staff_ids = Staff.joins(:user).where(job_type: common.id).pluck(:id)
111
124
  @assessment_id = params[:q].present? && params[:q][:assessment_id].present? ? params[:q][:assessment_id]:'1'
112
- @assessment_year = params[:q].present? && params[:q][:assessment_year].present? ? params[:q][:assessment_year] : '2022'
125
+ @assessment_year = params[:q].present? && params[:q][:assessment_year].present? ? params[:q][:assessment_year] : Time.now.year
113
126
  @assessments =AssessmentsSetting.where(assessment: @assessment_id)
114
127
  .where("assessment_year >= ? and assessment_year <= ?", "#{@assessment_year}-01-01 00:00:00".to_date, "#{@assessment_year}-12-31 23:59:00".to_date)
115
128
  .order("created_at desc")
116
129
  if @assessments.present?
117
130
  # 小优化
118
- @staff_ids = params[:q].present? && params[:q][:staff_id].present? ? [params[:q][:staff_id].to_i]:@assessments.pluck(:staff_id).uniq
119
- p @staff_ids
131
+ @staff_ids = params[:q].present? && params[:q][:staff_id].present? ? [params[:q][:staff_id].to_i]:@assessments.distinct.pluck(:staff_id)
120
132
  progress_main
121
133
  # 注意一下
122
134
  @assessments = @assessments.where(staff_id: @staff_ids)
@@ -160,12 +172,12 @@ module EducodeSales
160
172
  businesses = @businesses.where(staff_id: d)
161
173
  b = []
162
174
  a=[]
163
- FollowUp.joins("JOIN educode_sales_businesses ON educode_sales_businesses.last_follow_up_id = educode_sales_follow_ups.id").where("educode_sales_businesses.id in (?)",businesses.pluck(:id)).each do |m|
175
+ FollowUp.joins("JOIN educode_sales_businesses ON educode_sales_businesses.last_follow_up_id = educode_sales_follow_ups.id")
176
+ .where("educode_sales_businesses.id in (?)",businesses.pluck(:id)).each do |m|
164
177
  b << {value: m.actual_amount.to_i, date:m.signed_date.to_s[5..6].to_i}
165
178
  end
166
-
167
179
  count_data(b,a) # 统计数据
168
- update_assessments_progress(a,d) # 批量更新assessment数据 事物 出现一个commit
180
+ update_assessments_progress(a,d) # 批量更新assessment数据 事物 一个commit
169
181
  end
170
182
  end
171
183
 
@@ -190,7 +202,7 @@ module EducodeSales
190
202
  @money_plans = MoneyPlan.joins(:follow_up).where(follow_up_id: follow_up_ids)
191
203
  end
192
204
  end
193
- # todo 1 :实际回款 0:计划回款 where(clazz: 1 OR 实际回款 ) 先把staff写死
205
+ # todo 1 :实际回款 0:计划回款 where(clazz: 1 OR 实际回款 )
194
206
  @money_plans = @money_plans.where(clazz: 1).where.not(date_at: nil)
195
207
  @staff_ids.each do |d|
196
208
  b = []
@@ -267,8 +279,8 @@ module EducodeSales
267
279
  businesses.each do |m|
268
280
  b << {date: m.created_at.to_s[5..6].to_i, value: 1}
269
281
  end
270
- count_data(b,a)
271
- update_assessments_progress(a, d)
282
+ count_data(b,a) # 统计数据
283
+ update_assessments_progress(a, d) # 批量更新assessment数据 事物 一个commit
272
284
  end
273
285
  end
274
286
 
@@ -304,14 +316,11 @@ module EducodeSales
304
316
  a[15] = a[9].to_i + a[10].to_i + a[11].to_i
305
317
  a[16] = a[12].to_i + a[13].to_i + a[14].to_i + a[15].to_i
306
318
  # 开启事物 处理 批量修改数据
307
- ActiveRecord::Base.transaction do
308
- assessments = @assessments.where(staff_id: staff_id)
309
- assessments.update(annual_progress: a[16], first_quarter_progress: a[12], second_quarter_progress: a[13], third_quarter_progress: a[14], fourth_quarter_progress: a[15],
319
+ assessments = @assessments.where(staff_id: staff_id)
320
+ assessments.update(annual_progress: a[16], first_quarter_progress: a[12], second_quarter_progress: a[13], third_quarter_progress: a[14], fourth_quarter_progress: a[15],
310
321
  january_progress: a[0], february_progress: a[1], march_progress: a[2], april_progress: a[3], may_progress: a[4], june_progress: a[5],
311
322
  july_progress: a[6], august_progress: a[7], september_progress: a[8], october_progress: a[9], november_progress: a[10], december_progress: a[11])
312
323
 
313
- end
314
-
315
324
  end
316
325
 
317
326
  # 将统计到的数据转入a中
@@ -21,9 +21,10 @@ module EducodeSales
21
21
  end
22
22
 
23
23
  gon.type = params[:clazz_id].present? ? [{ value: params[:clazz_id], name: Common.find(params[:clazz_id]).name }] : []
24
- gon.business_step = Common.where(clazz: 'business_step').map do |d|
24
+ gon.business_step = Common.where(clazz: 'business_step').order("position").map do |d|
25
25
  {value: d.id, name: d.name}
26
26
  end
27
+
27
28
  if can?(:create, EducodeSales::SalePlan)
28
29
  gon.menus << { title: '添加周计划', event: 'week' }
29
30
  gon.menus << { title: '添加月计划', event: 'month' }
@@ -45,6 +46,13 @@ module EducodeSales
45
46
  gon.export_menus << { title: '导出到Excel文件', event: 'export_excel' }
46
47
  end
47
48
  gon.export_menus << { title: '导出记录', event: 'export_records' }
49
+
50
+ filter_businesses_list = Filter.find_or_create_by(staff_id: @current_admin.id, filter_type: "businesses_list")
51
+ gon.business_filter = {}
52
+ filter_businesses_list.filter_data&.split(",")&.each do |d|
53
+ m = d[0..-2]
54
+ gon.business_filter["#{m}"] = d[-1].to_i
55
+ end
48
56
  end
49
57
  format.json do
50
58
  if @current_admin.is_admin?
@@ -0,0 +1,18 @@
1
+
2
+
3
+ module EducodeSales
4
+ class Filter< ApplicationRecord
5
+ # belongs_to :educode_sales_staff, :class_name => 'EducodeSales::Staff'
6
+ belongs_to :staff
7
+
8
+ # serialize :filter_data, Json
9
+
10
+
11
+
12
+
13
+
14
+
15
+
16
+ end
17
+ end
18
+
@@ -93,96 +93,115 @@
93
93
  title: '序号',
94
94
  width: 100,
95
95
  sort: true,
96
- fixed: 'left'
96
+ fixed: 'left',
97
+ // filter: false
97
98
  },
98
99
  {
99
100
  field: 'username',
100
101
  title: '考核人员',
101
102
  width: 100,
102
- fixed: 'left'
103
+ fixed: 'left',
104
+ hide: gon.filter["username"]
103
105
  },
104
106
  {
105
107
  field: 'annual',
106
108
  title: '全年',
107
109
  width: 100,
110
+ hide: gon.filter["annual"],
108
111
  },
109
112
  {
110
113
  field: 'first_quarter',
111
114
  title: '第1季度',
112
115
  width: 100,
116
+ hide: gon.filter["first_quarter"],
113
117
  },
114
118
  {
115
119
  field: 'january',
116
120
  title: '1月',
121
+ hide: gon.filter.january,
117
122
  },
118
123
  {
119
124
  field: 'february',
120
125
  title: '2月',
121
126
  width: 70,
127
+ hide: gon.filter.february,
122
128
  },
123
129
  {
124
130
  field: 'march',
125
131
  title: '3月',
126
132
  width: 70,
133
+ hide: gon.filter.march,
127
134
  },
128
135
  {
129
136
  field: 'second_quarter',
130
137
  title: '第2季度',
131
138
  width: 100,
139
+ hide: gon.filter.second_quarter,
132
140
  },
133
141
  {
134
142
  field: 'april',
135
143
  title: '4月',
144
+ hide: gon.filter.april,
136
145
  },
137
146
  {
138
147
  field: 'may',
139
148
  title: '5月',
140
149
  width: 70,
150
+ hide: gon.filter.may,
141
151
  },
142
152
  {
143
153
  field: 'june',
144
154
  title: '6月',
145
155
  width: 70,
156
+ hide: gon.filter.june,
146
157
  },
147
158
  {
148
159
  field: 'third_quarter',
149
160
  title: '第3季度',
150
161
  width: 100,
162
+ hide: gon.filter.third_quarter,
151
163
  },
152
164
  {
153
165
  field: 'july',
154
166
  title: '7月',
155
167
  width: 70,
168
+ hide: gon.filter.july,
156
169
  },
157
170
  {
158
171
  field: 'august',
159
172
  title: '8月',
160
173
  width: 70,
174
+ hide: gon.filter.august,
161
175
  },
162
176
  {
163
177
  field: 'september',
164
178
  title: '9月',
165
179
  width: 70,
180
+ hide: gon.filter.september,
166
181
  },
167
182
  {
168
183
  field: 'fourth_quarter',
169
184
  title: '第4季度',
170
185
  width: 100,
186
+ hide: gon.filter.fourth_quarter,
171
187
  },
172
188
  {
173
189
  field: 'october',
174
190
  title: '10月',
175
191
  width: 70,
192
+ hide: gon.filter.october,
176
193
  },
177
194
  {
178
195
  field: 'november',
179
196
  title: '11月',
180
197
  width: 70,
198
+ hide: gon.filter.november,
181
199
  },
182
200
  {
183
201
  field: 'december',
184
202
  title: '12月',
185
203
  width: 70,
204
+ hide: gon.filter.december,
186
205
  },
187
206
  {
188
207
  field: 'option',
@@ -237,7 +256,22 @@
237
256
  })
238
257
 
239
258
 
259
+
240
260
  table.on('tool(assessments)', function (obj) {
261
+
262
+ switch (obj.event) {
263
+ case 'username' :
264
+ console.log(obj);
265
+ console.log(obj.data);
266
+ console.log("username")
267
+ console.log("=================")
268
+ break;
269
+ case 'annual' :
270
+ console.log("annual")
271
+ break;
272
+
273
+ }
274
+
241
275
  var data = obj.data;
242
276
  console.log(obj)
243
277
  console.log(data)
@@ -275,7 +309,31 @@
275
309
  });
276
310
 
277
311
  // * toolbar事件监听
278
- table.on('toolbar(assessments)', function (obj) {
312
+ table.on('toolbar(assessments)', function (obj) {
313
+ switch (obj.event) {
314
+ case 'LAYTABLE_COLS':
315
+ console.log("start")
316
+ var checkStatus = table.checkStatus(obj.config.id);
317
+ console.log(checkStatus)
318
+ layui.form.on('checkbox(LAY_TABLE_TOOL_COLS)', function(obj) {
319
+ console.log(obj); //当前行的一些常用操作集合
320
+ var value = obj.elem.checked
321
+ console.log(value); //当前是否选中状态
322
+ console.log('====checked'); //选中行的相关数据
323
+ var name = obj.elem.attributes[1].value
324
+ console.log(name);
325
+ console.log("request start")
326
+ request.get('missions/filter?type=assessments_setup&name='+name+'&hidden='+value, {}, function (res) {
327
+ console.log("end")
328
+ // layui.msg("重新加载生效")
329
+ // layer.close(index);
330
+ // table.reload("assessments")
331
+ })
332
+ });
333
+ break;
334
+
335
+ }
336
+
279
337
  if (obj.event === 'add') { // 监听添加操作
280
338
  var content = miniPage.getHrefContent('/missions/assessments/new');
281
339
  var openWH = miniPage.getOpenWidthHeight();
@@ -183,7 +183,7 @@
183
183
  // 单独写在这里配合upen(才实现打开open时清空select中数据)
184
184
  // staffs(select多选)
185
185
  // 因为new是弹出层 所以可以获取index页面的gon.demo数据
186
- var test = gon.demo;
186
+ var test = gon.staff_ids;
187
187
  var staffs = xmSelect.render({
188
188
  el: '#staffs',
189
189
  data: test,
@@ -261,8 +261,8 @@
261
261
  elem: '#businesses_table',
262
262
  url: '/missions/businesses',
263
263
  where: {q: data},
264
- defaultToolbar: ['filter'],
265
264
  toolbar: '#bussinessBar',
265
+ defaultToolbar: ['filter'],
266
266
  title: '商机数据表',
267
267
  totalRow: true,//开启合并行
268
268
  cols: [
@@ -279,19 +279,22 @@
279
279
  width: 170,
280
280
  title: '商机名称',
281
281
  templet: '<div><span title="{{d.name}}">{{d.name}}</span></div>',
282
- fixed: 'left'
282
+ fixed: 'left',
283
+ hide: gon.business_filter.name
283
284
  },
284
285
  {
285
286
  field: 'school',
286
287
  width: 150,
287
288
  title: '单位',
288
- templet: '#school_name'
289
+ templet: '#school_name',
290
+ hide: gon.business_filter.school
289
291
  },
290
292
  {
291
293
  field: 'department',
292
294
  width: 150,
293
295
  title: '部门',
294
- templet: '<div><span title="{{d.department}}">{{d.department}}</span></div>'
296
+ templet: '<div><span title="{{d.department}}">{{d.department}}</span></div>',
297
+ hide: gon.business_filter.department
295
298
  },
296
299
  {
297
300
  field: 'follow_ups_count',
@@ -299,6 +302,7 @@
299
302
  width: 60,
300
303
  templet: '#show_follow',
301
304
  totalRow: true,
305
+ hide: gon.business_filter.name
302
306
  },
303
307
  // {
304
308
  // field: 'teachers_count',
@@ -310,102 +314,119 @@
310
314
  field: 'clazz',
311
315
  width: 80,
312
316
  title: '类型',
313
- templet: '<div><span title="{{d.clazz}}">{{d.clazz}}</span></div>'
317
+ templet: '<div><span title="{{d.clazz}}">{{d.clazz}}</span></div>',
318
+ hide: gon.business_filter.name
314
319
  },
315
320
  {
316
321
  field: 'stage',
317
322
  width: 90,
318
- title: '阶段'
323
+ title: '阶段',
324
+ hide: gon.business_filter.name
319
325
  },
320
326
  {
321
327
  field: 'source',
322
328
  width: 90,
323
- title: '商机来源'
329
+ title: '商机来源',
330
+ hide: gon.business_filter.source
324
331
  },
325
332
  {
326
333
  field: 'last_follow_person',
327
334
  width: 100,
328
- title: '最新跟进人'
335
+ title: '最新跟进人',
336
+ hide: gon.business_filter.last_follow_person
329
337
  },
330
338
  {
331
339
  field: 'latest_time',
332
340
  width: 200,
333
341
  title: '最新跟进时间',
334
- sort: true
342
+ sort: true,
343
+ hide: gon.business_filter.latest_time
335
344
  },
336
345
  {
337
346
  field: 'invitation_at',
338
347
  width: 105,
339
348
  title: '招标时间',
340
- sort: true
349
+ sort: true,
350
+ hide: gon.business_filter.invitation_at
341
351
  },
342
352
  {
343
353
  field: 'bidded_date',
344
354
  width: 105,
345
355
  title: '中标时间',
346
- sort: true
356
+ sort: true,
357
+ hide: gon.business_filter.bidded_date
347
358
  },
348
359
  {
349
360
  field: 'signed_date',
350
361
  width: 105,
351
362
  title: '签单时间',
352
- sort: true
363
+ sort: true,
364
+ hide: gon.business_filter.signed_date
353
365
  },
354
366
  {
355
367
  field: 'reception_at',
356
368
  width: 105,
357
369
  title: '验收时间',
358
- sort: true
370
+ sort: true,
371
+ hide: gon.business_filter.reception_at
359
372
  },
360
373
  {
361
374
  field: 'service_end_time',
362
375
  width: 200,
363
376
  title: '服务期',
364
- sort: true
377
+ sort: true,
378
+ hide: gon.business_filter.service_end_time
365
379
  },
366
380
  {
367
381
  field: 'total_amount',
368
382
  width: 100,
369
383
  title: '总额',
370
384
  totalRow: true,
371
- sort: true
385
+ sort: true,
386
+ hide: gon.business_filter.total_amount
372
387
  },
373
388
  {
374
389
  field: 'actual_amount',
375
390
  width: 100,
376
391
  title: '合同额',
377
392
  totalRow: true,
378
- sort: true
393
+ sort: true,
394
+ hide: gon.business_filter.actual_amount
379
395
  },
380
396
  {
381
397
  field: 'return_money',
382
398
  width: 100,
383
399
  title: '回款',
384
400
  sort: true,
385
- totalRow: true
401
+ totalRow: true,
402
+ hide: gon.business_filter.return_money
386
403
  },
387
404
  {
388
405
  field: 'wait_return_money',
389
406
  width: 100,
390
407
  title: '待回款',
391
408
  sort: true,
392
- totalRow: true
409
+ totalRow: true,
410
+ hide: gon.business_filter.wait_return_money
393
411
  },
394
412
  {
395
413
  field: 'return_money_days',
396
414
  width: 150,
397
415
  title: '首次回款周期(天)',
416
+ hide: gon.business_filter.return_money_days
398
417
  },
399
418
  {
400
419
  field: 'place',
401
420
  width: 160,
402
421
  title: '渠道',
422
+ hide: gon.business_filter.place
403
423
  },
404
424
  {
405
425
  field: 'year',
406
426
  width: 105,
407
427
  title: '所属年度',
408
- sort: true
428
+ sort: true,
429
+ hide: gon.business_filter.year
409
430
  },
410
431
  {
411
432
  field: 'followed',
@@ -419,7 +440,8 @@
419
440
  },
420
441
  width: 105,
421
442
  title: '关注',
422
- align: "center"
443
+ align: "center",
444
+ hide: gon.business_filter.followed
423
445
 
424
446
  },
425
447
  {
@@ -427,7 +449,7 @@
427
449
  minWidth: 220,
428
450
  toolbar: '#currentTableBar',
429
451
  align: "center",
430
- fixed: 'right'
452
+ fixed: 'right',
431
453
  }
432
454
  ]
433
455
  ],
@@ -834,6 +856,17 @@
834
856
  });
835
857
 
836
858
  table.on('toolbar(businesses_table)', function (obj) {
859
+ switch (obj.event) {
860
+ case 'LAYTABLE_COLS':
861
+ layui.form.on('checkbox(LAY_TABLE_TOOL_COLS)', function(obj) {
862
+ var value = obj.elem.checked
863
+ var name = obj.elem.attributes[1].value
864
+ console.log(obj.elem.attributes.name);
865
+ request.get('missions/filter?type=businesses_list&name='+name+'&hidden='+value,{},function (res){})
866
+ });
867
+ }
868
+
869
+
837
870
  if (obj.event === 'add') { // 监听添加操作
838
871
  var content = miniPage.getHrefContent('/missions/businesses/new');
839
872
  var openWH = miniPage.getOpenWidthHeight();
@@ -1045,7 +1078,6 @@
1045
1078
  });
1046
1079
  }
1047
1080
  });
1048
-
1049
1081
  });
1050
1082
  </script>
1051
1083
  <style>
data/config/routes.rb CHANGED
@@ -13,6 +13,7 @@ EducodeSales::Engine.routes.draw do
13
13
  get :sales_staff, to: "home#sales_staff"
14
14
  get :sales_place, to: "home#sales_place"
15
15
  get :staff_schools, to: "home#staff_schools"
16
+ get :filter, to: "application#filter"
16
17
 
17
18
 
18
19
  resources :sessions do
@@ -0,0 +1,10 @@
1
+ class CreateFilter < ActiveRecord::Migration[5.2]
2
+ def change
3
+ create_table :educode_sales_filters do |t|
4
+ t.string :filter_type
5
+ t.references :staff
6
+ t.string :filter_data
7
+ t.timestamps
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,5 @@
1
+ class ChangeEducodeSalesFilterColumnLength < ActiveRecord::Migration[5.2]
2
+ def change
3
+ change_column :educode_sales_filters, :filter_data, :text
4
+ end
5
+ end
@@ -1,3 +1,3 @@
1
1
  module EducodeSales
2
- VERSION = '0.7.9'
2
+ VERSION = '0.8.1'
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.7.9
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - anke1460
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-29 00:00:00.000000000 Z
11
+ date: 2022-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -193,6 +193,7 @@ files:
193
193
  - app/models/educode_sales/customer_add.rb
194
194
  - app/models/educode_sales/customer_extension.rb
195
195
  - app/models/educode_sales/customer_follow.rb
196
+ - app/models/educode_sales/filter.rb
196
197
  - app/models/educode_sales/follow_up.rb
197
198
  - app/models/educode_sales/key_person.rb
198
199
  - app/models/educode_sales/market_area.rb
@@ -453,6 +454,8 @@ files:
453
454
  - db/migrate/20220418033025_add_staff_id_to_sets.rb
454
455
  - db/migrate/20220419103842_add_column_timestamps_to_assessments_settings.rb
455
456
  - db/migrate/20220420071909_create_educode_sales_business_relation_ships.rb
457
+ - db/migrate/20220507020149_create_filter.rb
458
+ - db/migrate/20220507091959_change_educode_sales_filter_column_length.rb
456
459
  - lib/educode_sales.rb
457
460
  - lib/educode_sales/engine.rb
458
461
  - lib/educode_sales/version.rb