educode_sales 0.7.2 → 0.7.5
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 +4 -4
- data/app/assets/images/educode_sales/assessment.png +0 -0
- data/app/assets/images/educode_sales/indexlogo.png +0 -0
- data/app/controllers/educode_sales/assessments_controller.rb +490 -0
- data/app/controllers/educode_sales/businesses_controller.rb +13 -4
- data/app/controllers/educode_sales/customers_controller.rb +3 -0
- data/app/controllers/educode_sales/follow_ups_controller.rb +13 -1
- data/app/controllers/educode_sales/home_controller.rb +4 -3
- data/app/controllers/educode_sales/money_plans_controller.rb +2 -0
- data/app/controllers/educode_sales/plans_controller.rb +1 -0
- data/app/controllers/educode_sales/results_controller.rb +54 -0
- data/app/controllers/educode_sales/roles_controller.rb +4 -1
- data/app/controllers/educode_sales/sessions_controller.rb +2 -1
- data/app/helpers/educode_sales/application_helper.rb +61 -0
- data/app/helpers/educode_sales/assessments_help.rb +52 -0
- data/app/models/educode_sales/assessments_setting.rb +28 -0
- data/app/models/educode_sales/business.rb +2 -1
- data/app/models/educode_sales/follow_up.rb +1 -1
- data/app/models/educode_sales/money_plan.rb +1 -0
- data/app/models/educode_sales/permission.rb +2 -1
- data/app/models/educode_sales/result.rb +4 -0
- data/app/models/educode_sales/role_area.rb +2 -1
- data/app/views/educode_sales/assessments/_progress.html.erb +433 -0
- data/app/views/educode_sales/assessments/_setup.html.erb +331 -0
- data/app/views/educode_sales/assessments/edit.html.erb +238 -0
- data/app/views/educode_sales/assessments/get_export_data.json.jbuilder +197 -0
- data/app/views/educode_sales/assessments/index.html.erb +63 -0
- data/app/views/educode_sales/assessments/index.json.jbuilder +26 -0
- data/app/views/educode_sales/assessments/new.html.erb +310 -0
- data/app/views/educode_sales/assessments/progress.json.jbuilder +372 -0
- data/app/views/educode_sales/businesses/edit_follow_record.html.erb +150 -114
- data/app/views/educode_sales/businesses/get_export_data.json.jbuilder +1 -0
- data/app/views/educode_sales/businesses/index.html.erb +25 -19
- data/app/views/educode_sales/businesses/index.json.jbuilder +1 -0
- data/app/views/educode_sales/businesses/new_follow_record.html.erb +163 -126
- data/app/views/educode_sales/businesses/show_follow.html.erb +25 -20
- data/app/views/educode_sales/businesses/show_follow.json.jbuilder +1 -0
- data/app/views/educode_sales/businesses/show_follow_record.html.erb +8 -1
- data/app/views/educode_sales/places/index.html.erb +5 -3
- data/app/views/educode_sales/plans/_monthPlan.html.erb +3 -1
- data/app/views/educode_sales/plans/new_month.html.erb +2 -0
- data/app/views/educode_sales/plans/new_week.html.erb +5 -1
- data/app/views/educode_sales/results/edit.html.erb +111 -0
- data/app/views/educode_sales/results/index.html.erb +0 -0
- data/app/views/educode_sales/results/index.json.jbuilder +13 -0
- data/app/views/educode_sales/results/new.html.erb +58 -0
- data/app/views/educode_sales/results/show.json.jbuilder +9 -0
- data/app/views/educode_sales/roles/edit.html.erb +26 -18
- data/app/views/educode_sales/sale_reports/index.json.jbuilder +1 -0
- data/app/views/layouts/educode_sales/application.html.erb +18 -12
- data/app/views/layouts/educode_sales/login.html.erb +1 -1
- data/config/routes.rb +18 -1
- data/db/migrate/20210902064109_create_educode_sales_role_permissions.rb +9 -1
- data/db/migrate/20220314053856_add_service_start_time_to_follow_ups.rb +6 -0
- data/db/migrate/20220314074354_add_service_time_long_to_follow_ups.rb +5 -0
- data/db/migrate/20220402020233_create_educode_sales_assessments_settings.rb +27 -0
- data/db/migrate/20220411021641_add_new_column_assessments_settings.rb +20 -0
- data/db/migrate/20220413090940_add_september_progress_to_assessment_settings.rb +5 -0
- data/lib/educode_sales/version.rb +1 -1
- metadata +31 -6
@@ -0,0 +1,58 @@
|
|
1
|
+
<div class="layuimini-main" style="height: 100%;">
|
2
|
+
|
3
|
+
<div class="layui-form layuimini-form">
|
4
|
+
<div class="layui-form-item">
|
5
|
+
<label class="layui-form-label required">字典名称</label>
|
6
|
+
<div class="layui-input-block">
|
7
|
+
<%= select_tag "clazz", options_for_select(EducodeSales::Common.clazzs.map{|d| d }), {'lay-filter': 'clazz'} %>
|
8
|
+
</div>
|
9
|
+
</div>
|
10
|
+
<div class="layui-form-item">
|
11
|
+
<label class="layui-form-label required">选项名称</label>
|
12
|
+
<div class="layui-input-block">
|
13
|
+
<input type="text" name="name" autocomplete="off" lay-verify="required" lay-reqtext="选项名称不能为空"
|
14
|
+
placeholder="请输入选项名称" value="" class="layui-input">
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
<hr>
|
18
|
+
<div class="layui-form-item">
|
19
|
+
<div class="layui-input-block">
|
20
|
+
<button class="layui-btn layui-btn-normal" lay-submit lay-filter="saveBtn">确认保存</button>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
|
26
|
+
<script>
|
27
|
+
layui.use(['form', 'table', 'upload', 'laytpl', 'request'], function () {
|
28
|
+
var form = layui.form,
|
29
|
+
layer = layui.layer,
|
30
|
+
table = layui.table,
|
31
|
+
laytpl = layui.laytpl,
|
32
|
+
request = layui.request,
|
33
|
+
$ = layui.$;
|
34
|
+
|
35
|
+
form.render();
|
36
|
+
|
37
|
+
// 当前弹出层,防止ID被覆盖
|
38
|
+
var parentIndex = layer.index;
|
39
|
+
|
40
|
+
//监听提交
|
41
|
+
form.on('submit(saveBtn)', function (data) {
|
42
|
+
|
43
|
+
request.authPost("/missions/commons", data.field, function(res) {
|
44
|
+
if (res.success == false) {
|
45
|
+
alert(res.msg)
|
46
|
+
} else {
|
47
|
+
layer.close(parent.index);
|
48
|
+
parent.layer.close(parent.layer.getFrameIndex(window.name))
|
49
|
+
parent.table.reload('table')
|
50
|
+
}
|
51
|
+
})
|
52
|
+
|
53
|
+
|
54
|
+
return false;
|
55
|
+
});
|
56
|
+
|
57
|
+
});
|
58
|
+
</script>
|
@@ -31,49 +31,57 @@
|
|
31
31
|
<div class="layui-form-item" style="border-top: 1px solid #ddd;">
|
32
32
|
<label class="layui-form-label">商机管理</label>
|
33
33
|
<div class="layui-input-block">
|
34
|
-
<%= radio_button_tag("business", "自己", @areas.include?("商机管理-自己"), {title: '本人创建列表', id: 1}) %>
|
35
|
-
<%= radio_button_tag("business", "区域", @areas.include?("商机管理-区域"), {title: '本人负责区域及监管院校列表', id: 2}) %>
|
36
|
-
<%= radio_button_tag("business", "全部", @areas.include?("商机管理-全部"), {title: '全部列表', id: 3}) %>
|
34
|
+
<%= radio_button_tag("business", "自己", @areas.include?("商机管理-自己"), { title: '本人创建列表', id: 1 }) %>
|
35
|
+
<%= radio_button_tag("business", "区域", @areas.include?("商机管理-区域"), { title: '本人负责区域及监管院校列表', id: 2 }) %>
|
36
|
+
<%= radio_button_tag("business", "全部", @areas.include?("商机管理-全部"), { title: '全部列表', id: 3 }) %>
|
37
37
|
</div>
|
38
38
|
</div>
|
39
39
|
<div class="layui-form-item" style="border-top: 1px solid #ddd;">
|
40
40
|
<label class="layui-form-label">回款计划</label>
|
41
41
|
<div class="layui-input-block">
|
42
|
-
<%= radio_button_tag("money_plan", "自己", @areas.include?("回款管理-自己"), {title: '本人负责列表', id: 16}) %>
|
43
|
-
<%= radio_button_tag("money_plan", "区域", @areas.include?("回款管理-区域"), {title: '本人负责区域及监管院校列表', id: 17}) %>
|
44
|
-
<%= radio_button_tag("money_plan", "全部", @areas.include?("回款管理-全部"), {title: '全部列表', id: 18}) %>
|
42
|
+
<%= radio_button_tag("money_plan", "自己", @areas.include?("回款管理-自己"), { title: '本人负责列表', id: 16 }) %>
|
43
|
+
<%= radio_button_tag("money_plan", "区域", @areas.include?("回款管理-区域"), { title: '本人负责区域及监管院校列表', id: 17 }) %>
|
44
|
+
<%= radio_button_tag("money_plan", "全部", @areas.include?("回款管理-全部"), { title: '全部列表', id: 18 }) %>
|
45
45
|
</div>
|
46
46
|
</div>
|
47
47
|
<div class="layui-form-item">
|
48
48
|
<label class="layui-form-label">客户管理</label>
|
49
49
|
<div class="layui-input-block">
|
50
|
-
<%= radio_button_tag("customer", "自己", @areas.include?("客户管理-自己"), {title: '本人负责列表', id: 13}) %>
|
51
|
-
<%= radio_button_tag("customer", "区域", @areas.include?("客户管理-区域"), {title: '本人负责区域及监管院校列表', id:14}) %>
|
52
|
-
<%= radio_button_tag("customer", "全部", @areas.include?("客户管理-全部"), {title: '全部列表', id: 15}) %>
|
50
|
+
<%= radio_button_tag("customer", "自己", @areas.include?("客户管理-自己"), { title: '本人负责列表', id: 13 }) %>
|
51
|
+
<%= radio_button_tag("customer", "区域", @areas.include?("客户管理-区域"), { title: '本人负责区域及监管院校列表', id: 14 }) %>
|
52
|
+
<%= radio_button_tag("customer", "全部", @areas.include?("客户管理-全部"), { title: '全部列表', id: 15 }) %>
|
53
|
+
</div>
|
54
|
+
</div>
|
55
|
+
<div class="layui-form-item">
|
56
|
+
<label class="layui-form-label">绩效考核</label>
|
57
|
+
<div class="layui-input-block">
|
58
|
+
<%= radio_button_tag("assessments_setting", "自己", @areas.include?("绩效考核-自己"), { title: '本人绩效列表', id: 31 }) %>
|
59
|
+
<%= radio_button_tag("assessments_setting", "区域", @areas.include?("绩效考核-区域"), { title: '本人负责区域人员绩效列表', id: 32 }) %>
|
60
|
+
<%= radio_button_tag("assessments_setting", "全部", @areas.include?("绩效考核-全部"), { title: '全部人员绩效', id: 33 }) %>
|
53
61
|
</div>
|
54
62
|
</div>
|
55
63
|
<div class="layui-form-item">
|
56
64
|
<label class="layui-form-label">销售计划</label>
|
57
65
|
<div class="layui-input-block">
|
58
|
-
<%= radio_button_tag("sale_plan", "自己", @areas.include?("销售计划-自己"), {title: '本人创建列表', id: 4}) %>
|
59
|
-
<%= radio_button_tag("sale_plan", "区域", @areas.include?("销售计划-区域"), {title: '本人负责区域及监管院校列表', id: 5}) %>
|
60
|
-
<%= radio_button_tag("sale_plan", "全部", @areas.include?("销售计划-全部"), {title: '全部列表', id: 6}) %>
|
66
|
+
<%= radio_button_tag("sale_plan", "自己", @areas.include?("销售计划-自己"), { title: '本人创建列表', id: 4 }) %>
|
67
|
+
<%= radio_button_tag("sale_plan", "区域", @areas.include?("销售计划-区域"), { title: '本人负责区域及监管院校列表', id: 5 }) %>
|
68
|
+
<%= radio_button_tag("sale_plan", "全部", @areas.include?("销售计划-全部"), { title: '全部列表', id: 6 }) %>
|
61
69
|
</div>
|
62
70
|
</div>
|
63
71
|
<div class="layui-form-item">
|
64
72
|
<label class="layui-form-label">教师运营</label>
|
65
73
|
<div class="layui-input-block">
|
66
|
-
<%= radio_button_tag("teacher", "自己", @areas.include?("教师运营-自己"), {title: '本人创建列表', id: 7}) %>
|
67
|
-
<%= radio_button_tag("teacher", "区域", @areas.include?("教师运营-区域"), {title: '本人负责区域及监管院校列表', id:8}) %>
|
68
|
-
<%= radio_button_tag("teacher", "全部", @areas.include?("教师运营-全部"), {title: '全部列表', id: 9}) %>
|
74
|
+
<%= radio_button_tag("teacher", "自己", @areas.include?("教师运营-自己"), { title: '本人创建列表', id: 7 }) %>
|
75
|
+
<%= radio_button_tag("teacher", "区域", @areas.include?("教师运营-区域"), { title: '本人负责区域及监管院校列表', id: 8 }) %>
|
76
|
+
<%= radio_button_tag("teacher", "全部", @areas.include?("教师运营-全部"), { title: '全部列表', id: 9 }) %>
|
69
77
|
</div>
|
70
78
|
</div>
|
71
79
|
<div class="layui-form-item">
|
72
80
|
<label class="layui-form-label">运营计划</label>
|
73
81
|
<div class="layui-input-block">
|
74
|
-
<%= radio_button_tag("operation", "自己", @areas.include?("运营计划-自己"), {title: '本人创建列表', id: 10}) %>
|
75
|
-
<%= radio_button_tag("operation", "区域", @areas.include?("运营计划-区域"), {title: '本人负责区域及监管院校列表', id:11}) %>
|
76
|
-
<%= radio_button_tag("operation", "全部", @areas.include?("运营计划-全部"), {title: '全部列表', id: 12}) %>
|
82
|
+
<%= radio_button_tag("operation", "自己", @areas.include?("运营计划-自己"), { title: '本人创建列表', id: 10 }) %>
|
83
|
+
<%= radio_button_tag("operation", "区域", @areas.include?("运营计划-区域"), { title: '本人负责区域及监管院校列表', id: 11 }) %>
|
84
|
+
<%= radio_button_tag("operation", "全部", @areas.include?("运营计划-全部"), { title: '全部列表', id: 12 }) %>
|
77
85
|
</div>
|
78
86
|
</div>
|
79
87
|
<div class="m-t-20">
|
@@ -62,10 +62,6 @@
|
|
62
62
|
<a href="/missions/sale_trends/trends" class="<%= current?('layui-this', trends_sale_trends_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/2.市场态势.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>销售态势</a>
|
63
63
|
</dd>
|
64
64
|
<% end %>
|
65
|
-
<% if can? :sales, EducodeSales::Staff %>
|
66
|
-
<dd><a href="/missions/sales" class="<%= current?('layui-this', sales_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/3.销售分工.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>销售分工</a>
|
67
|
-
</dd>
|
68
|
-
<% end %>
|
69
65
|
<% if can? :read, EducodeSales::Business %>
|
70
66
|
<dd><a href="/missions/businesses" class="<%= current?('layui-this', businesses_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/4.商机管理.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>商机管理</a>
|
71
67
|
</dd>
|
@@ -84,24 +80,29 @@
|
|
84
80
|
<% if can? :read, EducodeSales::SalePlan %>
|
85
81
|
<dd><a href="/missions/plans" class="<%= current?('layui-this', plans_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/6.销售计划.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>销售计划</a></dd>
|
86
82
|
<% end %>
|
83
|
+
<% if can?(:show, EducodeSales::AssessmentsSetting) || can?(:show_result, EducodeSales::AssessmentsSetting) %>
|
84
|
+
<dd><a href="/missions/assessments" class="<%= current?('layui-this', assessments_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/assessment.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>绩效考核</a></dd>
|
85
|
+
<% end %>
|
86
|
+
<% if can? :sales, EducodeSales::Staff %>
|
87
|
+
<dd><a href="/missions/sales" class="<%= current?('layui-this', sales_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/3.销售分工.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>销售分工</a>
|
88
|
+
</dd>
|
89
|
+
<% end %>
|
87
90
|
<% if @current_admin.is_admin %>
|
88
|
-
|
89
|
-
|
91
|
+
<dd>
|
92
|
+
<a href="/missions/recycles" class="<%= current?('layui-this', recycles_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/回收站.png", size: "15" %>
|
93
|
+
<i style="font-size: 25px; padding-right: 15px"></i>回收站</a></dd>
|
94
|
+
<% end %>
|
90
95
|
</dl>
|
91
96
|
</li>
|
92
97
|
<li class="layui-nav-item layui-nav-itemed menu-li">
|
93
|
-
<a class="" href="javascript:;"><b><%= image_tag "educode_sales/7.运营活动.png",size:"15"
|
98
|
+
<a class="" href="javascript:;"><b><%= image_tag "educode_sales/7.运营活动.png", size: "15" %>
|
99
|
+
<i style="font-size: 25px; padding-right: 25px"></i>运营活动</b></a>
|
94
100
|
<dl class="layui-nav-child">
|
95
101
|
<% if can? :read, EducodeSales::OperationTrend %>
|
96
102
|
<dd>
|
97
103
|
<a href="/missions/operations/trends" class="<%= current?('layui-this', trends_operations_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/8.运营态势.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>运营态势</a>
|
98
104
|
</dd>
|
99
105
|
<% end %>
|
100
|
-
<% if can? :operations, EducodeSales::Staff %>
|
101
|
-
<dd>
|
102
|
-
<a href="/missions/sales/operations" class="<%= current?('layui-this', operations_sales_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/9.运营分工.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>运营分工</a>
|
103
|
-
</dd>
|
104
|
-
<% end %>
|
105
106
|
<% if can? :read, EducodeSales::Teacher %>
|
106
107
|
<dd><a href="/missions/teachers" class="<%= current?('layui-this', teachers_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/10.教师运营.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>教师运营</a></dd>
|
107
108
|
<% end %>
|
@@ -113,6 +114,11 @@
|
|
113
114
|
<a href="/missions/operation_plans" class="<%= current?('layui-this', operation_plans_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/12.运营计划.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>运营计划</a>
|
114
115
|
</dd>
|
115
116
|
<% end %>
|
117
|
+
<% if can? :operations, EducodeSales::Staff %>
|
118
|
+
<dd>
|
119
|
+
<a href="/missions/sales/operations" class="<%= current?('layui-this', operations_sales_path) %>"><i style="padding-right: 35px"></i><%= image_tag "educode_sales/9.运营分工.png",size:"15"%><i style="font-size: 25px; padding-right: 15px"></i>运营分工</a>
|
120
|
+
</dd>
|
121
|
+
<% end %>
|
116
122
|
</dl>
|
117
123
|
</li>
|
118
124
|
<% if @current_admin.is_admin %>
|
@@ -16,5 +16,5 @@
|
|
16
16
|
<%= yield %>
|
17
17
|
</div>
|
18
18
|
<div class="footer">
|
19
|
-
©版权所有
|
19
|
+
©版权所有 <%= Time.now.year %> 头歌<span class="padding-5">|</span><a target="_blank" href="http://www.educoder.net">头歌官网</a>
|
20
20
|
</div>
|
data/config/routes.rb
CHANGED
@@ -14,9 +14,11 @@ EducodeSales::Engine.routes.draw do
|
|
14
14
|
get :sales_place, to: "home#sales_place"
|
15
15
|
get :staff_schools, to: "home#staff_schools"
|
16
16
|
|
17
|
+
|
17
18
|
resources :sessions do
|
18
19
|
end
|
19
20
|
|
21
|
+
|
20
22
|
resources :customer_extensions do
|
21
23
|
end
|
22
24
|
resources :customer_follows do
|
@@ -142,6 +144,15 @@ EducodeSales::Engine.routes.draw do
|
|
142
144
|
get :my_month
|
143
145
|
end
|
144
146
|
end
|
147
|
+
|
148
|
+
######
|
149
|
+
resources :assessments do
|
150
|
+
collection do
|
151
|
+
get :progress # 考核完成情况
|
152
|
+
post :get_export_data # 导出数据
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
145
156
|
resources :operation_plans do
|
146
157
|
collection do
|
147
158
|
get :operation
|
@@ -162,7 +173,6 @@ EducodeSales::Engine.routes.draw do
|
|
162
173
|
end
|
163
174
|
end
|
164
175
|
|
165
|
-
|
166
176
|
resources :import_teachers
|
167
177
|
|
168
178
|
resources :upload_files do
|
@@ -173,6 +183,13 @@ EducodeSales::Engine.routes.draw do
|
|
173
183
|
member do
|
174
184
|
end
|
175
185
|
end
|
186
|
+
resources :results do
|
187
|
+
collection do
|
188
|
+
end
|
189
|
+
|
190
|
+
member do
|
191
|
+
end
|
192
|
+
end
|
176
193
|
|
177
194
|
resources :teachers do
|
178
195
|
collection do
|
@@ -7,9 +7,17 @@ class CreateEducodeSalesRolePermissions < ActiveRecord::Migration[5.2]
|
|
7
7
|
t.timestamps
|
8
8
|
end
|
9
9
|
if EducodeSales::Permission.last.nil?
|
10
|
+
#绩效考核权限
|
11
|
+
EducodeSales::Permission.find_or_create_by(name: '查看人员任务列表', subject: 'AssessmentsSetting', action: 'show', clazz: 'assessments_setting', position: '191')
|
12
|
+
EducodeSales::Permission.find_or_create_by(name: '添加人员任务列表', subject: 'AssessmentsSetting', action: 'create', clazz: 'assessments_setting', position: '192')
|
13
|
+
EducodeSales::Permission.find_or_create_by(name: '编辑人员任务列表', subject: 'AssessmentsSetting', action: 'edit', clazz: 'assessments_setting', position: '193')
|
14
|
+
EducodeSales::Permission.find_or_create_by(name: '删除人员任务列表', subject: 'AssessmentsSetting', action: 'destroy', clazz: 'assessments_setting', position: '194')
|
15
|
+
EducodeSales::Permission.find_or_create_by(name: '查看指标完成情况', subject: 'AssessmentsSetting', action: 'show_result', clazz: 'assessments_setting', position: '195')
|
16
|
+
EducodeSales::Permission.find_or_create_by(name: '导出指标完成情况', subject: 'AssessmentsSetting', action: 'export_result', clazz: 'assessments_setting', position: '196')
|
17
|
+
|
18
|
+
#导出商机
|
10
19
|
EducodeSales::Permission.create(name: '导出商机', subject: 'Business', action: 'export_business', clazz: 'business', position: '11')
|
11
20
|
|
12
|
-
|
13
21
|
#附件管理权限
|
14
22
|
EducodeSales::Permission.create(name: '查看附件', subject: 'Business', action: 'show_file', clazz: 'business', position: '11')
|
15
23
|
EducodeSales::Permission.create(name: '上传附件', subject: 'Business', action: 'upload_file', clazz: 'business', position: '11')
|
@@ -0,0 +1,27 @@
|
|
1
|
+
class CreateEducodeSalesAssessmentsSettings < ActiveRecord::Migration[5.2]
|
2
|
+
def change
|
3
|
+
create_table :educode_sales_assessments_settings do |t|
|
4
|
+
t.references :user
|
5
|
+
t.date :assessment_year
|
6
|
+
t.integer :assessment
|
7
|
+
t.integer :annual
|
8
|
+
t.integer :first_quarter
|
9
|
+
t.integer :second_quarter
|
10
|
+
t.integer :third_quarter
|
11
|
+
t.integer :fourth_quarter
|
12
|
+
t.integer :january
|
13
|
+
t.integer :february
|
14
|
+
t.integer :march
|
15
|
+
t.integer :april
|
16
|
+
t.integer :may
|
17
|
+
t.integer :june
|
18
|
+
t.integer :july
|
19
|
+
t.integer :august
|
20
|
+
t.integer :september
|
21
|
+
t.integer :october
|
22
|
+
t.integer :november
|
23
|
+
t.integer :december
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class AddNewColumnAssessmentsSettings < ActiveRecord::Migration[5.2]
|
2
|
+
def change
|
3
|
+
add_column :educode_sales_assessments_settings, :annual_progress, :string
|
4
|
+
add_column :educode_sales_assessments_settings, :first_quarter_progress, :string
|
5
|
+
add_column :educode_sales_assessments_settings, :second_quarter_progress, :string
|
6
|
+
add_column :educode_sales_assessments_settings, :third_quarter_progress, :string
|
7
|
+
add_column :educode_sales_assessments_settings, :fourth_quarter_progress, :string
|
8
|
+
add_column :educode_sales_assessments_settings, :january_progress, :string
|
9
|
+
add_column :educode_sales_assessments_settings, :february_progress, :string
|
10
|
+
add_column :educode_sales_assessments_settings, :march_progress, :string
|
11
|
+
add_column :educode_sales_assessments_settings, :april_progress, :string
|
12
|
+
add_column :educode_sales_assessments_settings, :may_progress, :string
|
13
|
+
add_column :educode_sales_assessments_settings, :june_progress, :string
|
14
|
+
add_column :educode_sales_assessments_settings, :july_progress, :string
|
15
|
+
add_column :educode_sales_assessments_settings, :august_progress, :string
|
16
|
+
add_column :educode_sales_assessments_settings, :october_progress, :string
|
17
|
+
add_column :educode_sales_assessments_settings, :november_progress, :string
|
18
|
+
add_column :educode_sales_assessments_settings, :december_progress, :string
|
19
|
+
end
|
20
|
+
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.
|
4
|
+
version: 0.7.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- anke1460
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2022-
|
11
|
+
date: 2022-04-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -99,11 +99,13 @@ files:
|
|
99
99
|
- app/assets/images/educode_sales/8.运营态势.png
|
100
100
|
- app/assets/images/educode_sales/9.运营分工.png
|
101
101
|
- app/assets/images/educode_sales/a.png
|
102
|
+
- app/assets/images/educode_sales/assessment.png
|
102
103
|
- app/assets/images/educode_sales/favicon.ico
|
103
104
|
- app/assets/images/educode_sales/icon-ext.png
|
104
105
|
- app/assets/images/educode_sales/icon-login.png
|
105
106
|
- app/assets/images/educode_sales/icon.png
|
106
107
|
- app/assets/images/educode_sales/indexLogo.png
|
108
|
+
- app/assets/images/educode_sales/indexlogo.png
|
107
109
|
- app/assets/images/educode_sales/loading-0.gif
|
108
110
|
- app/assets/images/educode_sales/loading-1.gif
|
109
111
|
- app/assets/images/educode_sales/loading-2.gif
|
@@ -137,6 +139,7 @@ files:
|
|
137
139
|
- app/assets/stylesheets/educode_sales/public.css
|
138
140
|
- app/controllers/educode_sales/activities_controller.rb
|
139
141
|
- app/controllers/educode_sales/application_controller.rb
|
142
|
+
- app/controllers/educode_sales/assessments_controller.rb
|
140
143
|
- app/controllers/educode_sales/businesses_controller.rb
|
141
144
|
- app/controllers/educode_sales/commons_controller.rb
|
142
145
|
- app/controllers/educode_sales/customer_extensions_controller.rb
|
@@ -153,6 +156,7 @@ files:
|
|
153
156
|
- app/controllers/educode_sales/places_controller.rb
|
154
157
|
- app/controllers/educode_sales/plans_controller.rb
|
155
158
|
- app/controllers/educode_sales/recycles_controller.rb
|
159
|
+
- app/controllers/educode_sales/results_controller.rb
|
156
160
|
- app/controllers/educode_sales/roles_controller.rb
|
157
161
|
- app/controllers/educode_sales/sale_reports_controller.rb
|
158
162
|
- app/controllers/educode_sales/sale_trends_controller.rb
|
@@ -164,6 +168,7 @@ files:
|
|
164
168
|
- app/controllers/educode_sales/upload_files_controller.rb
|
165
169
|
- app/helpers/educode_sales/activities_helper.rb
|
166
170
|
- app/helpers/educode_sales/application_helper.rb
|
171
|
+
- app/helpers/educode_sales/assessments_help.rb
|
167
172
|
- app/helpers/educode_sales/business_helper.rb
|
168
173
|
- app/helpers/educode_sales/follow_up_helper.rb
|
169
174
|
- app/helpers/educode_sales/home_helper.rb
|
@@ -176,6 +181,7 @@ files:
|
|
176
181
|
- app/models/educode_sales/activity.rb
|
177
182
|
- app/models/educode_sales/activity_teacher.rb
|
178
183
|
- app/models/educode_sales/application_record.rb
|
184
|
+
- app/models/educode_sales/assessments_setting.rb
|
179
185
|
- app/models/educode_sales/assign_follow_up.rb
|
180
186
|
- app/models/educode_sales/business.rb
|
181
187
|
- app/models/educode_sales/business_export_record.rb
|
@@ -196,6 +202,7 @@ files:
|
|
196
202
|
- app/models/educode_sales/place.rb
|
197
203
|
- app/models/educode_sales/place_area.rb
|
198
204
|
- app/models/educode_sales/recycle.rb
|
205
|
+
- app/models/educode_sales/result.rb
|
199
206
|
- app/models/educode_sales/role.rb
|
200
207
|
- app/models/educode_sales/role_area.rb
|
201
208
|
- app/models/educode_sales/role_permission.rb
|
@@ -212,6 +219,14 @@ files:
|
|
212
219
|
- app/views/educode_sales/activities/index.json.jbuilder
|
213
220
|
- app/views/educode_sales/activities/new.html.erb
|
214
221
|
- app/views/educode_sales/activities/show_teachers.html.erb
|
222
|
+
- app/views/educode_sales/assessments/_progress.html.erb
|
223
|
+
- app/views/educode_sales/assessments/_setup.html.erb
|
224
|
+
- app/views/educode_sales/assessments/edit.html.erb
|
225
|
+
- app/views/educode_sales/assessments/get_export_data.json.jbuilder
|
226
|
+
- app/views/educode_sales/assessments/index.html.erb
|
227
|
+
- app/views/educode_sales/assessments/index.json.jbuilder
|
228
|
+
- app/views/educode_sales/assessments/new.html.erb
|
229
|
+
- app/views/educode_sales/assessments/progress.json.jbuilder
|
215
230
|
- app/views/educode_sales/businesses/_follows.html.erb
|
216
231
|
- app/views/educode_sales/businesses/edit.html.erb
|
217
232
|
- app/views/educode_sales/businesses/edit_follow_record.html.erb
|
@@ -329,6 +344,11 @@ files:
|
|
329
344
|
- app/views/educode_sales/recycles/monthly.json.jbuilder
|
330
345
|
- app/views/educode_sales/recycles/weekPlan.json.jbuilder
|
331
346
|
- app/views/educode_sales/recycles/weekly.json.jbuilder
|
347
|
+
- app/views/educode_sales/results/edit.html.erb
|
348
|
+
- app/views/educode_sales/results/index.html.erb
|
349
|
+
- app/views/educode_sales/results/index.json.jbuilder
|
350
|
+
- app/views/educode_sales/results/new.html.erb
|
351
|
+
- app/views/educode_sales/results/show.json.jbuilder
|
332
352
|
- app/views/educode_sales/roles/edit.html.erb
|
333
353
|
- app/views/educode_sales/roles/index.html.erb
|
334
354
|
- app/views/educode_sales/roles/index.json.jbuilder
|
@@ -422,6 +442,11 @@ files:
|
|
422
442
|
- db/migrate/20220121060006_create_educode_sales_business_export_records.rb
|
423
443
|
- db/migrate/20220125013811_create_educode_sales_staff_schools.rb
|
424
444
|
- db/migrate/20220125033552_create_educode_sales_customer_adds.rb
|
445
|
+
- db/migrate/20220314053856_add_service_start_time_to_follow_ups.rb
|
446
|
+
- db/migrate/20220314074354_add_service_time_long_to_follow_ups.rb
|
447
|
+
- db/migrate/20220402020233_create_educode_sales_assessments_settings.rb
|
448
|
+
- db/migrate/20220411021641_add_new_column_assessments_settings.rb
|
449
|
+
- db/migrate/20220413090940_add_september_progress_to_assessment_settings.rb
|
425
450
|
- lib/educode_sales.rb
|
426
451
|
- lib/educode_sales/engine.rb
|
427
452
|
- lib/educode_sales/version.rb
|
@@ -430,7 +455,7 @@ homepage: https://www.educoder.net
|
|
430
455
|
licenses:
|
431
456
|
- MIT
|
432
457
|
metadata: {}
|
433
|
-
post_install_message:
|
458
|
+
post_install_message:
|
434
459
|
rdoc_options: []
|
435
460
|
require_paths:
|
436
461
|
- lib
|
@@ -445,8 +470,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
445
470
|
- !ruby/object:Gem::Version
|
446
471
|
version: '0'
|
447
472
|
requirements: []
|
448
|
-
rubygems_version: 3.0.
|
449
|
-
signing_key:
|
473
|
+
rubygems_version: 3.0.9
|
474
|
+
signing_key:
|
450
475
|
specification_version: 4
|
451
476
|
summary: Summary of EducodeSales.
|
452
477
|
test_files: []
|