|
@ -0,0 +1,160 @@
|
|
|
|
package com.yihu.jw.base.endpoint.voluntary;
|
|
|
|
|
|
|
|
import com.yihu.jw.base.dao.voluntary.VoluntaryRecruitmentPeopleDao;
|
|
|
|
import com.yihu.jw.base.service.voluntary.VoluntaryRecruitmentArrangeService;
|
|
|
|
import com.yihu.jw.entity.voluntary.VoluntaryRecruitmentArrangeDO;
|
|
|
|
import com.yihu.jw.entity.voluntary.VoluntaryRecruitmentPeopleDO;
|
|
|
|
import com.yihu.jw.restmodel.web.Envelop;
|
|
|
|
import com.yihu.jw.restmodel.web.ListEnvelop;
|
|
|
|
import com.yihu.jw.restmodel.web.PageEnvelop;
|
|
|
|
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
|
|
|
|
import io.swagger.annotations.Api;
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
|
import jxl.Workbook;
|
|
|
|
import jxl.write.Label;
|
|
|
|
import jxl.write.WritableSheet;
|
|
|
|
import jxl.write.WritableWorkbook;
|
|
|
|
import jxl.write.WriteException;
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
import java.io.OutputStream;
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
/**
|
|
|
|
* Created by Bing on 2021/8/4.
|
|
|
|
*/
|
|
|
|
@RestController
|
|
|
|
@RequestMapping(value = "voluntaryRecruitmentArrange")
|
|
|
|
@Api(value = "新冠-志愿招募安排管理", description = "新冠-志愿招募安排管理", tags = {"新冠-志愿招募安排管理"})
|
|
|
|
public class VoluntaryRecruitmentArrangeEndpoint extends EnvelopRestEndpoint {
|
|
|
|
|
|
|
|
@Autowired
|
|
|
|
private VoluntaryRecruitmentArrangeService arrangeService;
|
|
|
|
@Autowired
|
|
|
|
private VoluntaryRecruitmentPeopleDao peopleDao;
|
|
|
|
|
|
|
|
@GetMapping(value = "page")
|
|
|
|
@ApiOperation(value = "获取分页")
|
|
|
|
public PageEnvelop<VoluntaryRecruitmentArrangeDO> page(
|
|
|
|
@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
|
|
|
|
@RequestParam(value = "fields", required = false) String fields,
|
|
|
|
@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
|
|
|
|
@RequestParam(value = "filters", required = false) String filters,
|
|
|
|
@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
|
|
|
|
@RequestParam(value = "sorts", required = false) String sorts,
|
|
|
|
@ApiParam(name = "page", value = "分页大小", required = true, defaultValue = "1")
|
|
|
|
@RequestParam(value = "page") int page,
|
|
|
|
@ApiParam(name = "size", value = "页码", required = true, defaultValue = "15")
|
|
|
|
@RequestParam(value = "size") int size) throws Exception {
|
|
|
|
List<VoluntaryRecruitmentArrangeDO> appVersions = arrangeService.search(fields, filters, sorts, page, size);
|
|
|
|
int count = (int) arrangeService.getCount(filters);
|
|
|
|
return success(appVersions, count, page, size, VoluntaryRecruitmentArrangeDO.class);
|
|
|
|
}
|
|
|
|
|
|
|
|
@GetMapping(value = "list")
|
|
|
|
@ApiOperation(value = "获取列表")
|
|
|
|
public ListEnvelop<VoluntaryRecruitmentArrangeDO> list(
|
|
|
|
@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
|
|
|
|
@RequestParam(value = "fields", required = false) String fields,
|
|
|
|
@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
|
|
|
|
@RequestParam(value = "filters", required = false) String filters,
|
|
|
|
@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
|
|
|
|
@RequestParam(value = "sorts", required = false) String sorts) throws Exception {
|
|
|
|
List<VoluntaryRecruitmentArrangeDO> appVersions = arrangeService.search(fields, filters, sorts);
|
|
|
|
return success(appVersions, VoluntaryRecruitmentArrangeDO.class);
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
@GetMapping(value = "/excelControl/exportExcel")
|
|
|
|
@ApiOperation("导出列表")
|
|
|
|
@ResponseBody
|
|
|
|
public void searchList(
|
|
|
|
@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
|
|
|
|
@RequestParam(value = "fields", required = false) String fields,
|
|
|
|
@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
|
|
|
|
@RequestParam(value = "filters", required = false) String filters,
|
|
|
|
@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
|
|
|
|
@RequestParam(value = "sorts", required = false) String sorts,
|
|
|
|
HttpServletResponse response) {
|
|
|
|
try {
|
|
|
|
List<VoluntaryRecruitmentArrangeDO> appVersions = arrangeService.search(fields, filters, sorts);
|
|
|
|
response.setContentType("octets/stream");
|
|
|
|
response.setHeader("Content-Disposition", "attachment; filename=" + new String("volunteerArrange.xls"));
|
|
|
|
OutputStream os = response.getOutputStream();
|
|
|
|
this.write(os, appVersions);
|
|
|
|
} catch (Exception ex) {
|
|
|
|
Envelop.getError("导出失败");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void write(OutputStream os, List<VoluntaryRecruitmentArrangeDO> list) throws Exception {
|
|
|
|
WritableWorkbook wwb = Workbook.createWorkbook(os);
|
|
|
|
try {
|
|
|
|
WritableSheet sheet = wwb.createSheet("sheet", 1);
|
|
|
|
String header[] = {"序号", "日期","服务时间","所在单位", " 姓名", "手机号", "身份证号", "是否有核酸检测信息采集设备运维经验","是否接种疫苗"};
|
|
|
|
int i = 0;
|
|
|
|
for (String h : header) {
|
|
|
|
addCell(sheet, 0, i, h);
|
|
|
|
i++;
|
|
|
|
}
|
|
|
|
int j = 1;
|
|
|
|
int ii=1;
|
|
|
|
for (VoluntaryRecruitmentArrangeDO tmp : list) {
|
|
|
|
VoluntaryRecruitmentPeopleDO peopleDO= peopleDao.findOne(tmp.getPeopleId());
|
|
|
|
if (null == peopleDO){
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
String vaccinationName = "未接种";
|
|
|
|
String experienceName = "否";
|
|
|
|
if (StringUtils.isNotBlank(peopleDO.getVaccination())){
|
|
|
|
String vaccination = peopleDO.getVaccination();
|
|
|
|
switch (vaccination){
|
|
|
|
case "1":
|
|
|
|
vaccinationName = "已接种一针";
|
|
|
|
break;
|
|
|
|
case "2":
|
|
|
|
vaccinationName = "已接种";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (StringUtils.isNotBlank(peopleDO.getExperience())){
|
|
|
|
String experience = peopleDO.getExperience();
|
|
|
|
switch (experience){
|
|
|
|
case "0":
|
|
|
|
experienceName = "否";
|
|
|
|
break;
|
|
|
|
case "1 ":
|
|
|
|
experienceName = "是";
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
addCell(sheet, j, 0, ii + "");
|
|
|
|
addCell(sheet, j, 1, tmp.getDay());
|
|
|
|
addCell(sheet, j, 2, tmp.getTime());
|
|
|
|
addCell(sheet, j, 3, peopleDO.getCompanyName());
|
|
|
|
addCell(sheet, j, 4, tmp.getPeopleName() + "");
|
|
|
|
addCell(sheet, j, 5, peopleDO.getPhone()+"");
|
|
|
|
addCell(sheet, j, 6, peopleDO.getIdcard() + "");
|
|
|
|
addCell(sheet, j, 7, experienceName);
|
|
|
|
addCell(sheet, j, 8, vaccinationName);
|
|
|
|
j++;
|
|
|
|
ii++;
|
|
|
|
}
|
|
|
|
wwb.write();
|
|
|
|
wwb.close();
|
|
|
|
} catch (Exception e) {
|
|
|
|
e.printStackTrace();
|
|
|
|
if (wwb != null) wwb.close();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void addCell(WritableSheet ws, int row, int column, String data) throws WriteException {
|
|
|
|
Label label = new Label(column, row, data);
|
|
|
|
ws.addCell(label);
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|