educode_sales 0.9.59 → 0.9.60

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 (28) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/educode_sales/activities_controller.rb +54 -1
  3. data/app/controllers/educode_sales/home_controller.rb +4 -0
  4. data/app/controllers/educode_sales/ideas_controller.rb +86 -1
  5. data/app/controllers/educode_sales/upload_files_controller.rb +1 -1
  6. data/app/models/educode_sales/activity.rb +6 -0
  7. data/app/models/educode_sales/activity_staff.rb +9 -0
  8. data/app/models/educode_sales/idea.rb +23 -10
  9. data/app/views/educode_sales/activities/edit.html.erb +69 -2
  10. data/app/views/educode_sales/activities/index.html.erb +27 -1
  11. data/app/views/educode_sales/activities/index.json.jbuilder +5 -0
  12. data/app/views/educode_sales/activities/new.html.erb +100 -15
  13. data/app/views/educode_sales/businesses/time_line.html.erb +30 -0
  14. data/app/views/educode_sales/home/search_edu_user.json.jbuilder +13 -0
  15. data/app/views/educode_sales/idea_recycles/detail.html.erb +25 -4
  16. data/app/views/educode_sales/idea_recycles/index.html.erb +3 -3
  17. data/app/views/educode_sales/idea_recycles/index.json.jbuilder +1 -1
  18. data/app/views/educode_sales/ideas/detail.html.erb +25 -4
  19. data/app/views/educode_sales/ideas/edit.html.erb +134 -27
  20. data/app/views/educode_sales/ideas/index.html.erb +3 -3
  21. data/app/views/educode_sales/ideas/index.json.jbuilder +4 -4
  22. data/app/views/educode_sales/ideas/new.html.erb +118 -15
  23. data/config/routes.rb +1 -0
  24. data/db/migrate/20230319050647_add_clazz_to_educode_sales_activities.rb +6 -0
  25. data/db/migrate/20230319105048_create_educode_sales_activity_staffs.rb +13 -0
  26. data/db/migrate/20230322034022_add_to_school_name_to_ideas.rb +17 -0
  27. data/lib/educode_sales/version.rb +1 -1
  28. metadata +7 -2
@@ -23,6 +23,8 @@
23
23
  <% if f.id == @latest&.id && (f.created_at.present? ? (Time.now - f.created_at).to_f/3600 < 24 : false) %>
24
24
  <a href="javascript:;" class="add_key" data-is_latest="<%= f.id == @latest&.id %>" data-id=<%= f.id %> data-flag="<%= f.created_at.present? ? (Time.now - f.created_at).to_f/3600 < 24 : false %>">添加关键人</a>
25
25
  <% end %>
26
+ <br/>
27
+ 评论: <span></span> <a href="javascript:;" class="add_comment" data-id=<%= f.id %>>评论</a>
26
28
  </p>
27
29
  </div>
28
30
  </li>
@@ -68,6 +70,34 @@
68
70
  layer.full(keyindex);
69
71
  });
70
72
  })
73
+ $(".add_comment").on("click", function(e) {
74
+ var data = e.currentTarget.dataset;
75
+ follow_up_id = data.id;
76
+ var content = e.currentTarget.previousElementSibling.innerHTML;
77
+ layer.open({
78
+ title: '评论',
79
+ closeBtn: 0,
80
+ type: 1,
81
+ area: '400px;',
82
+ id: 'LAY_layuipro_new',
83
+ content: '<div class="layui-form" lay-filter="comment" style="padding: 20px;"><textarea autocomplete="off" type="text" name="name" lay-verify="required" class="layui-textarea">' + content + '</textarea></div>' ,
84
+ btn: ['保存', '取消'],
85
+ btn1: function(index, l) {
86
+ if (l.find("textarea").val().trim() == '') {
87
+ layer.msg('内容不能为空')
88
+ return false;
89
+ } else {
90
+ e.currentTarget.previousElementSibling.innerHTML = l.find("textarea").val().trim();
91
+ layer.close(index);
92
+ }
93
+ return false
94
+ },
95
+ btn2: function(index, l) {
96
+ layer.close(index)
97
+ },
98
+ });
99
+
100
+ })
71
101
  function demo(){
72
102
  layer.closeAll()
73
103
  business_id = parent.business_id
@@ -0,0 +1,13 @@
1
+ json.data do
2
+ json.array! @data do |d|
3
+ json.value d.id
4
+ if d.department_id.present?
5
+ json.name "#{d.real_name}--(#{d.user_extension.department&.school&.name})[头歌]"
6
+ else
7
+ json.name "#{d.real_name}[头歌]"
8
+ json.extras ""
9
+ end
10
+ end
11
+ end
12
+ json.code 0
13
+ json.msg 'succcess'
@@ -18,13 +18,13 @@
18
18
  <div class="layui-inline">
19
19
  <label class="layui-form-label" style="width: 100px">学校/单位:</label>
20
20
  <div class="layui-input-inline">
21
- <%= idea.school&.name %>
21
+ <%= idea.school_name %>
22
22
  </div>
23
23
  </div>
24
24
  <div class="layui-inline">
25
25
  <label class="layui-form-label" style="width: 100px">院系/部门:</label>
26
26
  <div class="layui-input-inline">
27
- <%= idea.department&.name %>
27
+ <%= idea.department_name %>
28
28
  </div>
29
29
  </div>
30
30
  <div class="layui-inline">
@@ -47,12 +47,33 @@
47
47
  </div>
48
48
  </div>
49
49
  <div class="layui-inline">
50
- <label class="layui-form-label" style="width: 100px">指派人:</label>
50
+ <label class="layui-form-label" style="width: 100px">方案指派人:</label>
51
51
  <div class="layui-input-inline">
52
52
  <%= idea.staff&.user&.real_name %>
53
53
  </div>
54
54
  </div>
55
55
  <br>
56
+ <div class="layui-inline">
57
+ <label class="layui-form-label" style="width: 100px">销售负责人:</label>
58
+ <div class="layui-input-inline">
59
+ <%= idea.sale_staff&.user&.real_name %>
60
+ </div>
61
+ </div>
62
+ <div class="layui-inline">
63
+ <label class="layui-form-label" style="width: 100px">协作者:</label>
64
+ <div class="layui-input-inline">
65
+ <%= idea.assist_staffs.map { |d| d&.user&.real_name }.reject(&:blank?).join("、") %>
66
+ </div>
67
+ </div>
68
+ <div class="layui-inline">
69
+ <label class="layui-form-label" style="width: 100px">方案材料:</label>
70
+ <div class="layui-input-inline">
71
+ <%= link_to "/missions/upload_files/download?id=#{idea.attachment_id}", target: '_blank' do %>
72
+ <%= idea.attachment&.filename.to_s %>
73
+ <% end %>
74
+ </div>
75
+ </div>
76
+ <br>
56
77
  <div class="layui-inline">
57
78
  <label class="layui-form-label" style="width: 100px">优先级:</label>
58
79
  <div class="layui-input-inline">
@@ -92,7 +113,7 @@
92
113
  </div>
93
114
  <br>
94
115
  <div class="layui-inline">
95
- <label class="layui-form-label" style="width: 100px">项目规模(人):</label>
116
+ <label class="layui-form-label" style="width: 100px">并发规模(人):</label>
96
117
  <div class="layui-input-inline">
97
118
  <%= idea.project.to_i %>
98
119
  </div>
@@ -14,7 +14,7 @@
14
14
  </div>
15
15
  </div>
16
16
  <div class="layui-inline">
17
- <label class="layui-form-label">指派人</label>
17
+ <label class="layui-form-label">方案指派人</label>
18
18
  <div class="layui-input-inline">
19
19
  <%= select_tag "staff_id", options_for_select(@staff_arr, ""), { include_blank: true } %>
20
20
  </div>
@@ -129,7 +129,7 @@
129
129
  },
130
130
  {
131
131
  field: 'staff',
132
- title: '指派人',
132
+ title: '方案指派人',
133
133
  width: 100
134
134
  },
135
135
  {
@@ -155,7 +155,7 @@
155
155
  {
156
156
  field: 'project',
157
157
  width: 150,
158
- title: '项目规模(人)'
158
+ title: '并发规模(人)'
159
159
  },
160
160
  {
161
161
  field: 'money',
@@ -1,7 +1,7 @@
1
1
  json.data do
2
2
  json.array! @ideas do |d|
3
3
  json.(d, :id, :name, :level, :status, :types, :model, :content)
4
- json.school d.school&.name
4
+ json.school d.school_name
5
5
  json.staff d.staff&.user&.real_name
6
6
  json.hardware d.hardware.to_f.round(2)
7
7
  json.project d.project.to_i
@@ -18,13 +18,13 @@
18
18
  <div class="layui-inline">
19
19
  <label class="layui-form-label" style="width: 100px">学校/单位:</label>
20
20
  <div class="layui-input-inline">
21
- <%= idea.school&.name %>
21
+ <%= idea.school_name %>
22
22
  </div>
23
23
  </div>
24
24
  <div class="layui-inline">
25
25
  <label class="layui-form-label" style="width: 100px">院系/部门:</label>
26
26
  <div class="layui-input-inline">
27
- <%= idea.department&.name %>
27
+ <%= idea.department_name %>
28
28
  </div>
29
29
  </div>
30
30
  <div class="layui-inline">
@@ -47,12 +47,33 @@
47
47
  </div>
48
48
  </div>
49
49
  <div class="layui-inline">
50
- <label class="layui-form-label" style="width: 100px">指派人:</label>
50
+ <label class="layui-form-label" style="width: 100px">方案指派人:</label>
51
51
  <div class="layui-input-inline">
52
52
  <%= idea.staff&.user&.real_name %>
53
53
  </div>
54
54
  </div>
55
55
  <br>
56
+ <div class="layui-inline">
57
+ <label class="layui-form-label" style="width: 100px">销售负责人:</label>
58
+ <div class="layui-input-inline">
59
+ <%= idea.sale_staff&.user&.real_name %>
60
+ </div>
61
+ </div>
62
+ <div class="layui-inline">
63
+ <label class="layui-form-label" style="width: 100px">协作者:</label>
64
+ <div class="layui-input-inline">
65
+ <%= idea.assist_staffs.map { |d| d&.user&.real_name }.reject(&:blank?).join("、") %>
66
+ </div>
67
+ </div>
68
+ <div class="layui-inline">
69
+ <label class="layui-form-label" style="width: 100px">方案材料:</label>
70
+ <div class="layui-input-inline">
71
+ <%= link_to "/missions/upload_files/download?id=#{idea.attachment_id}", target: '_blank' do %>
72
+ <%= idea.attachment&.filename.to_s %>
73
+ <% end %>
74
+ </div>
75
+ </div>
76
+ <br>
56
77
  <div class="layui-inline">
57
78
  <label class="layui-form-label" style="width: 100px">优先级:</label>
58
79
  <div class="layui-input-inline">
@@ -92,7 +113,7 @@
92
113
  </div>
93
114
  <br>
94
115
  <div class="layui-inline">
95
- <label class="layui-form-label" style="width: 100px">项目规模(人):</label>
116
+ <label class="layui-form-label" style="width: 100px">并发规模(人):</label>
96
117
  <div class="layui-input-inline">
97
118
  <%= idea.project.to_i %>
98
119
  </div>
@@ -6,57 +6,79 @@
6
6
  <h2 style="padding-left: 25px">方案信息</h2>
7
7
  </div>
8
8
  <div class="layui-row" style="padding-top: 15px">
9
- <div class="layui-inline">
10
- <label class="layui-form-label required">单位部门</label>
11
- <div class="layui-input-block" id="department" style="width: 300px;"></div>
9
+ <div class="layui-col-md6">
10
+ <labeL class="layui-form-label required">学校/单位:</labeL>
11
+ <div class="layui-input-block">
12
+ <input type="text" name="school_name" autocomplete="off" lay-verify="required" lay-reqtext="学校不能为空" placeholder="请输入学校/单位名称" value="<%= @idea&.school_name %>" class="layui-input">
13
+ </div>
14
+ </div>
15
+ <div class="layui-col-md6">
16
+ <labeL class="layui-form-label">院系/部门:</labeL>
17
+ <div class="layui-input-block">
18
+ <input type="text" name="department_name" autocomplete="off" placeholder="请输入院系/部门名称" value="<%= @idea&. department_name %>" class="layui-input">
19
+ </div>
12
20
  </div>
13
21
  </div>
14
22
  <div class="layui-row" style="padding-top: 15px">
15
23
  <div class="layui-col-md6">
16
24
  <labeL class="layui-form-label">学校负责人:</labeL>
17
25
  <div class="layui-input-block">
18
- <input type="text" name="manager_name" autocomplete="off" placeholder="请输入学校/单位名称" value="<%= @idea&.manager_name %>" class="layui-input">
26
+ <input type="text" name="manager_name" autocomplete="off" placeholder="请输入姓名" value="<%= @idea&.manager_name %>" class="layui-input">
19
27
  </div>
20
28
  </div>
21
29
  <div class="layui-col-md6">
22
30
  <labeL class="layui-form-label">负责人电话:</labeL>
23
31
  <div class="layui-input-block">
24
- <input type="text" name="manager_phone" autocomplete="off" placeholder="请输入院系/部门名称" value="<%= @idea&.manager_phone %>" class="layui-input">
32
+ <input type="text" name="manager_phone" autocomplete="off" placeholder="请输入手机号" value="<%= @idea&.manager_phone %>" class="layui-input">
25
33
  </div>
26
34
  </div>
27
35
  </div>
28
36
  <div class="layui-row" style="padding-top: 15px">
29
37
  <div class="layui-col-md6">
30
- <labeL class="layui-form-label required">项目名称:</labeL>
38
+ <labeL class="layui-form-label required">销售负责人:</labeL>
31
39
  <div class="layui-input-block">
32
- <input type="text" name="name" autocomplete="off" lay-verify="required" lay-reqtext="项目名称不能为空" placeholder="请输入项目名称" value="<%= @idea&.name %>" class="layui-input">
40
+ <div id="sale_staff_id"></div>
33
41
  </div>
34
42
  </div>
35
43
  <div class="layui-col-md6">
36
- <labeL class="layui-form-label required">指派人:</labeL>
44
+ <labeL class="layui-form-label">协作人:</labeL>
37
45
  <div class="layui-input-block">
38
- <%= select_tag "staff_id", options_for_select(EducodeSales::Staff.all.map { |d| [d.user&.real_name, d.id] }, @idea&.staff_id), { 'lay-filter': 'staff_id', include_blank: false } %>
46
+ <div id="assist_staff_ids"></div>
39
47
  </div>
40
48
  </div>
41
49
  </div>
42
50
  <div class="layui-row" style="padding-top: 15px">
43
51
  <div class="layui-col-md6">
44
- <labeL class="layui-form-label required">优先级:</labeL>
52
+ <labeL class="layui-form-label required">项目名称:</labeL>
45
53
  <div class="layui-input-block">
46
- <%= select_tag "level", options_for_select(EducodeSales::Idea.levels.keys, @idea&.level), { 'lay-filter': 'level', include_blank: false } %>
54
+ <input type="text" name="name" autocomplete="off" lay-verify="required" lay-reqtext="项目名称不能为空" placeholder="请输入项目名称" value="<%= @idea&.name %>" class="layui-input">
47
55
  </div>
48
56
  </div>
49
57
  <div class="layui-col-md6">
50
- <labeL class="layui-form-label required">状态:</labeL>
58
+ <labeL class="layui-form-label required">方案指派人:</labeL>
51
59
  <div class="layui-input-block">
52
- <%= select_tag "status", options_for_select(EducodeSales::Idea.statuses.keys, @idea&.status), { 'lay-filter': 'status', include_blank: false } %>
60
+ <div id="new_staff_id"></div>
53
61
  </div>
54
62
  </div>
55
63
  </div>
56
- <div class="layui-row" style="padding-top: 15px">
57
- <div class="layui-col-md6">
58
- <labeL class="layui-form-label required">类型:</labeL>
59
- <div class="layui-input-block">
64
+ <div class="layui-row" style="padding-top: 15px">
65
+ <div class="layui-col-md6">
66
+ <labeL class="layui-form-label required">优先级:</labeL>
67
+ <div class="layui-input-block">
68
+ <%= select_tag "level", options_for_select(EducodeSales::Idea.levels.keys, @idea&.level), { 'lay-filter': 'level', include_blank: false } %>
69
+ </div>
70
+ </div>
71
+ <div class="layui-col-md6">
72
+ <labeL class="layui-form-label required">状态:</labeL>
73
+ <div class="layui-input-block">
74
+ <%= select_tag "status", options_for_select(EducodeSales::Idea.statuses.keys, @idea&.status), { 'lay-filter': 'status', include_blank: false } %>
75
+ </div>
76
+ </div>
77
+ </div>
78
+ <div class="layui-row" style="padding-top: 15px">
79
+ <div class="layui-col-md6">
80
+ <labeL class="layui-form-label required">类型:</labeL>
81
+ <div class="layui-input-block">
60
82
  <%= select_tag "types", options_for_select(EducodeSales::Idea.types.keys, @idea&.types), { 'lay-filter': 'types', include_blank: false } %>
61
83
  </div>
62
84
  </div>
@@ -75,17 +97,17 @@
75
97
  </div>
76
98
  </div>
77
99
  <div class="layui-col-md6">
78
- <labeL class="layui-form-label required">项目预算(万):</labeL>
100
+ <labeL class="layui-form-label">项目预算(万):</labeL>
79
101
  <div class="layui-input-block">
80
- <input type="number" name="money" autocomplete="off" lay-verify="required" lay-reqtext="项目预算不能为空" placeholder="请输入项目预算" value="<%= @idea&.money %>" class="layui-input">
102
+ <input type="number" name="money" autocomplete="off" placeholder="请输入项目预算" value="<%= @idea&.money %>" class="layui-input">
81
103
  </div>
82
104
  </div>
83
105
  </div>
84
106
  <div class="layui-row" style="padding-top: 5px">
85
107
  <div class="layui-col-md6">
86
- <labeL class="layui-form-label required">项目规模(人):</labeL>
108
+ <labeL class="layui-form-label">并发规模(人):</labeL>
87
109
  <div class="layui-input-block">
88
- <input type="number" name="project" autocomplete="off" lay-verify="required" lay-reqtext="项目规模不能为空" placeholder="请输入项目规模" value="<%= @idea&.project %>" class="layui-input">
110
+ <input type="number" name="project" autocomplete="off" placeholder="请输入项目规模" value="<%= @idea&.project %>" class="layui-input">
89
111
  </div>
90
112
  </div>
91
113
  <div class="layui-col-md6">
@@ -95,12 +117,28 @@
95
117
  </div>
96
118
  </div>
97
119
  </div>
120
+ <div class="layui-row" style="padding-top: 5px;display: none">
121
+ <div class="layui-col-md6">
122
+ <labeL class="layui-form-label">文件id:</labeL>
123
+ <div class="layui-input-block">
124
+ <input type="text" name="attachment_id" id="attachment_id" autocomplete="off" value="" class="layui-input">
125
+ </div>
126
+ </div>
127
+ </div>
98
128
  <div class="layui-row" style="padding-top: 15px">
99
129
  <labeL class="layui-form-label">反馈情况:</labeL>
100
130
  <div class="layui-input-block">
101
131
  <textarea name="content" placeholder="反馈情况" class="layui-textarea"><%= @idea&.content.to_s %></textarea>
102
132
  </div>
103
133
  </div>
134
+ <div class="layui-row" style="padding-top: 15px">
135
+ <div class="layui-col-md6">
136
+ <labeL class="layui-form-label">方案材料:</labeL>
137
+ <div class="layui-btn-container">
138
+ <button type="button" class="layui-btn layui-btn-normal" id="test8">选择文件</button>
139
+ </div>
140
+ </div>
141
+ </div>
104
142
  <div class="layui-row" style="padding-top: 30px; float: left">
105
143
  <div class="layui-input-block">
106
144
  <button class="layui-btn layui-btn-normal" lay-submit lay-filter="saveBtn">确认保存</button>
@@ -110,7 +148,33 @@
110
148
  </div>
111
149
  </div>
112
150
  <script>
113
- layui.use(['form', 'table', 'upload', 'layer', 'laytpl', 'request', 'selectInput', 'xmSelect'], function () {
151
+ function displayFile() {
152
+ var input = document.getElementById("fileInput");
153
+ var fileName = document.getElementById("fileName");
154
+ fileName.innerText = "已选择文件:" + input.files[0].name;
155
+ uploadFile();
156
+ }
157
+
158
+ function uploadFile() {
159
+ var input = document.getElementById("fileInput");
160
+ var file = input.files[0];
161
+ var formData = new FormData();
162
+ formData.append("file", file);
163
+
164
+ var xhr = new XMLHttpRequest();
165
+ xhr.open("POST", "/api/attachments");
166
+ xhr.onload = function() {
167
+ if (xhr.status === 200) {
168
+ console.log(xhr.responseText.id);
169
+ alert("上传成功!");
170
+ } else {
171
+ alert("上传失败!");
172
+ }
173
+ };
174
+ xhr.send(formData);
175
+ }
176
+
177
+ layui.use(['form', 'table', 'upload', 'layer', 'laytpl', 'request', 'selectInput', 'xmSelect', 'upload'], function () {
114
178
  var form = layui.form,
115
179
  layer = layui.layer,
116
180
  request = layui.request,
@@ -119,6 +183,7 @@
119
183
  laytpl = layui.laytpl,
120
184
  request = layui.request,
121
185
  xmSelect = layui.xmSelect,
186
+ upload = layui.upload,
122
187
  $ = layui.$;
123
188
  selectInput = layui.selectInput;
124
189
 
@@ -128,6 +193,45 @@
128
193
  elem: '#new_time'
129
194
  });
130
195
  form.render();
196
+
197
+ upload.render({
198
+ elem: '#test8'
199
+ , url: '/missions/upload_files' //此处配置你自己的上传接口即可
200
+ , auto: true
201
+ , accept: 'file' //普通文件
202
+ , bindAction: '#test9'
203
+ , done: function (res) {
204
+ layer.msg('上传成功');
205
+ $("#attachment_id").val(res.attachment_id)
206
+ // $("#filename").val(res.filename)
207
+ }
208
+ });
209
+
210
+
211
+ var staff_list = xmSelect.render({
212
+ el: '#new_staff_id',
213
+ data: gon.staffs,
214
+ filterable: true,
215
+ radio: true,
216
+ })
217
+
218
+ var sale_staff_list = xmSelect.render({
219
+ el: '#sale_staff_id',
220
+ data: gon.staffs,
221
+ filterable: true,
222
+ radio: true,
223
+ })
224
+ var assist_staff_list = xmSelect.render({
225
+ el: '#assist_staff_ids',
226
+ data: gon.staffs,
227
+ filterable: true,
228
+ multiple:true
229
+ })
230
+
231
+ staff_list.setValue(gon.staff_value)
232
+ sale_staff_list.setValue(gon.sale_staff_value)
233
+ assist_staff_list.setValue(gon.assist_staff_value)
234
+
131
235
  var department_id = gon.value;
132
236
  var department = selectInput.render({
133
237
  elem: '#department',
@@ -157,11 +261,14 @@
157
261
 
158
262
  //监听提交
159
263
  form.on('submit(saveBtn)', function (data) {
160
- if (department.getValue() == "" && department_id == "") {
161
- layer.alert("请选择单位部门")
162
- return false;
163
- } else {
264
+ // if (department.getValue() == "" && department_id == "") {
265
+ // layer.alert("请选择单位部门")
266
+ // return false;
267
+ // } else {
164
268
  data.field.department_id = department.getValue() || department_id;
269
+ data.field.staff_id = staff_list.getValue('valueStr');
270
+ data.field.sale_staff_id = sale_staff_list.getValue('valueStr');
271
+ data.field.assist_staff_ids = assist_staff_list.getValue('valueStr');
165
272
  request.authPut("missions/ideas/" + parent.id, data.field, function (res) {
166
273
  if (res.success == false) {
167
274
  layer.alert(res.msg)
@@ -174,7 +281,7 @@
174
281
  });
175
282
  }
176
283
  })
177
- }
284
+ // }
178
285
  return false;
179
286
  });
180
287
 
@@ -14,7 +14,7 @@
14
14
  </div>
15
15
  </div>
16
16
  <div class="layui-inline">
17
- <label class="layui-form-label">指派人</label>
17
+ <label class="layui-form-label">方案指派人</label>
18
18
  <div class="layui-input-inline">
19
19
  <%= select_tag "staff_id", options_for_select(@staff_arr, ""), { include_blank: true } %>
20
20
  </div>
@@ -135,7 +135,7 @@
135
135
  },
136
136
  {
137
137
  field: 'staff',
138
- title: '指派人',
138
+ title: '方案指派人',
139
139
  width: 100
140
140
  },
141
141
  {
@@ -161,7 +161,7 @@
161
161
  {
162
162
  field: 'project',
163
163
  width: 150,
164
- title: '项目规模(人)'
164
+ title: '并发规模(人)'
165
165
  },
166
166
  {
167
167
  field: 'money',
@@ -1,11 +1,11 @@
1
1
  json.data do
2
2
  json.array! @ideas do |d|
3
3
  json.(d, :id, :name, :level, :status, :types, :model, :content)
4
- json.school d.school&.name
4
+ json.school d.school_name
5
5
  json.staff d.staff&.user&.real_name
6
- json.hardware d.hardware.to_f.round(2)
7
- json.project d.project.to_i
8
- json.money d.money.to_f.round(2)
6
+ json.hardware d.hardware
7
+ json.project d.project
8
+ json.money d.money
9
9
  json.end_time d.end_time.to_s
10
10
  json.creator d.creator&.user&.real_name
11
11
  json.deleter d.deleter&.user&.real_name