|
@@ -1,6 +1,9 @@
|
1
|
1
|
package com.huiju.estateagents.controller;
|
2
|
2
|
|
3
|
3
|
|
|
4
|
+import com.alibaba.excel.EasyExcel;
|
|
5
|
+import com.alibaba.excel.ExcelWriter;
|
|
6
|
+import com.alibaba.excel.write.metadata.WriteSheet;
|
4
|
7
|
import com.alibaba.fastjson.JSONObject;
|
5
|
8
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
6
|
9
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
@@ -11,6 +14,9 @@ import com.huiju.estateagents.common.CommConstant;
|
11
|
14
|
import com.huiju.estateagents.common.JWTUtils;
|
12
|
15
|
import com.huiju.estateagents.common.StringUtils;
|
13
|
16
|
import com.huiju.estateagents.entity.*;
|
|
17
|
+import com.huiju.estateagents.excel.HelpInitiateRecordSucceed;
|
|
18
|
+import com.huiju.estateagents.excel.TaActivityDynamicEnlistExport;
|
|
19
|
+import com.huiju.estateagents.excel.handler.CustomCellWriteHandler;
|
14
|
20
|
import com.huiju.estateagents.mapper.TaActivityDynamicEnlistMapper;
|
15
|
21
|
import com.huiju.estateagents.mapper.TaBuildingMapper;
|
16
|
22
|
import com.huiju.estateagents.mapper.TaSharePersonFromMapper;
|
|
@@ -29,8 +35,10 @@ import org.springframework.web.bind.ServletRequestDataBinder;
|
29
|
35
|
import org.springframework.web.bind.annotation.*;
|
30
|
36
|
|
31
|
37
|
import javax.servlet.http.HttpServletRequest;
|
|
38
|
+import javax.servlet.http.HttpServletResponse;
|
32
|
39
|
import javax.servlet.http.HttpSession;
|
33
|
40
|
import javax.swing.*;
|
|
41
|
+import java.io.IOException;
|
34
|
42
|
import java.text.DateFormat;
|
35
|
43
|
import java.text.SimpleDateFormat;
|
36
|
44
|
import java.time.LocalDateTime;
|
|
@@ -297,7 +305,6 @@ public class TaBuildingDynamicController extends BaseController {
|
297
|
305
|
if (null == taPersons || taPersons.size() != 1) {
|
298
|
306
|
return ResponseBean.error("验证人员信息失败", ResponseBean.ERROR_UNAVAILABLE);
|
299
|
307
|
}
|
300
|
|
-
|
301
|
308
|
TaBuildingDynamic buildingDynamic = iBuildingDynamicService.getById(taActivityDynamicEnlist.getDynamicId());
|
302
|
309
|
// TODO 看代码里面是 is_enlist = 1 才是允许报名
|
303
|
310
|
if (buildingDynamic.getIsEnlist().intValue() != 1) {
|
|
@@ -469,17 +476,23 @@ public class TaBuildingDynamicController extends BaseController {
|
469
|
476
|
@ApiImplicitParams({
|
470
|
477
|
@ApiImplicitParam(dataTypeClass = Integer.class, name = "pageNum", paramType = "query",value = "第几页"),
|
471
|
478
|
@ApiImplicitParam(dataTypeClass = Integer.class, name = "pageSize", paramType = "query",value = "一页多少行"),
|
472
|
|
- @ApiImplicitParam(dataType = "String", name = "dynamicId", paramType = "query",value = "活动ID")
|
|
479
|
+ @ApiImplicitParam(dataType = "String", name = "dynamicId", paramType = "query",value = "活动ID"),
|
|
480
|
+ @ApiImplicitParam(dataType = "String", name = "isCheckin", paramType = "query",value = "0未签到1签到"),
|
|
481
|
+ @ApiImplicitParam(dataType = "String", name = "name", paramType = "query",value = "用户姓名"),
|
|
482
|
+ @ApiImplicitParam(dataType = "String", name = "phone", paramType = "query",value = "手机号")
|
473
|
483
|
})
|
474
|
484
|
@RequestMapping(value = "/admin/SignList", method = RequestMethod.GET)
|
475
|
485
|
public ResponseBean getSignList(@RequestParam(value = "pageNum",defaultValue = "1")Integer pageNum,
|
476
|
486
|
@RequestParam(value = "pageSize",defaultValue = "10")Integer pageSize,
|
477
|
487
|
@RequestParam(value = "dynamicId",required = false)String dynamicId,
|
|
488
|
+ @RequestParam(value = "isCheckin",required = false)String isCheckin,
|
|
489
|
+ @RequestParam(value = "name",required = false)String name,
|
|
490
|
+ @RequestParam(value = "phone",required = false)String phone,
|
478
|
491
|
HttpServletRequest request) {
|
479
|
492
|
Page<TaActivityDynamicEnlist> page = new Page<>();
|
480
|
493
|
page.setSize(pageSize);
|
481
|
494
|
page.setCurrent(pageNum);
|
482
|
|
- ResponseBean signList = iBuildingDynamicService.signList(page,dynamicId, getOrgId(request));
|
|
495
|
+ ResponseBean signList = iBuildingDynamicService.signList(page,dynamicId, getOrgId(request),isCheckin,name,phone);
|
483
|
496
|
|
484
|
497
|
HashMap<String, Object> map = new HashMap<>();
|
485
|
498
|
map.put("list", signList);
|
|
@@ -513,6 +526,49 @@ public class TaBuildingDynamicController extends BaseController {
|
513
|
526
|
return responseBean;
|
514
|
527
|
}
|
515
|
528
|
|
|
529
|
+ /**
|
|
530
|
+ * 报名记录导出
|
|
531
|
+ *
|
|
532
|
+ * @param request
|
|
533
|
+ * @param response
|
|
534
|
+ * @throws IOException
|
|
535
|
+ */
|
|
536
|
+ @GetMapping("/admin/activityDynamicEnlist/export")
|
|
537
|
+ public void activityDynamicEnlistExport(HttpServletRequest request,
|
|
538
|
+ HttpServletResponse response,
|
|
539
|
+ @RequestParam(value = "dynamicId",required = false)String dynamicId,
|
|
540
|
+ @RequestParam(value = "isCheckin",required = false)String isCheckin,
|
|
541
|
+ @RequestParam(value = "name",required = false)String name,
|
|
542
|
+ @RequestParam(value = "phone",required = false)String phone) throws IOException {
|
|
543
|
+ // response.setContentType("application/vnd.ms-excel");
|
|
544
|
+ response.setContentType("application/octet-stream");
|
|
545
|
+ response.setCharacterEncoding("utf-8");
|
|
546
|
+ response.setHeader("Content-disposition", "attachment;filename=助力活动发起人.xlsx");
|
|
547
|
+
|
|
548
|
+ Integer orgId = getOrgId(request);
|
|
549
|
+
|
|
550
|
+ Integer pageCode = 0;
|
|
551
|
+ Integer pageSize = 100;
|
|
552
|
+ // 总页数
|
|
553
|
+ Integer pageCount = 0;
|
|
554
|
+
|
|
555
|
+ ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), TaActivityDynamicEnlistExport.class).registerWriteHandler(new CustomCellWriteHandler()).build();
|
|
556
|
+ // 设置 sheet, 同一个sheet只需要设置一次
|
|
557
|
+ WriteSheet writeSheet = EasyExcel.writerSheet("报名记录").build();
|
|
558
|
+ Integer count = iBuildingDynamicService.getTaActivityDynamicEnlist(dynamicId,isCheckin,name,phone);
|
|
559
|
+ pageCount = count % pageSize == 0 ? count / pageSize : (count / pageSize) + 1;
|
|
560
|
+ List<HelpInitiateRecordSucceed> publicList = null;
|
|
561
|
+ do {
|
|
562
|
+ publicList = iBuildingDynamicService.getTaActivityDynamicEnlistExport(pageCode * pageSize, pageSize,dynamicId,isCheckin,name,phone,getOrgId(request));
|
|
563
|
+ excelWriter.write(publicList, writeSheet);
|
|
564
|
+
|
|
565
|
+ pageCode++;
|
|
566
|
+ } while (pageCode <= pageCount);
|
|
567
|
+
|
|
568
|
+ // finish 会帮忙关闭流
|
|
569
|
+ excelWriter.finish();
|
|
570
|
+ }
|
|
571
|
+
|
516
|
572
|
|
517
|
573
|
|
518
|
574
|
}
|