luoyb
2021-03-10 3f50415850d93bf58306583086bf5400e18aeee0
febs-server/febs-server-hr/src/main/java/cc/mrbird/febs/server/hr/controller/EmpJobChangeController.java
@@ -1,11 +1,15 @@
package cc.mrbird.febs.server.hr.controller;
import cc.mrbird.febs.server.hr.annotation.ControllerEndpoint;
import cc.mrbird.febs.server.hr.entity.EmpJobChange;
import cc.mrbird.febs.server.hr.service.IEmpJobChangeService;
import cc.mrbird.febs.common.core.entity.FebsResponse;
import cc.mrbird.febs.common.core.entity.QueryRequest;
import cc.mrbird.febs.common.core.exception.FebsException;
import cc.mrbird.febs.common.core.utils.FebsUtil;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUtil;
import com.wuwenze.poi.ExcelKit;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -14,8 +18,12 @@
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
 * name:EmpJobchange
@@ -45,13 +53,22 @@
    @ApiOperation(value = "员工调岗记录翻页列表")
    @GetMapping("list")
    @PreAuthorize("hasAuthority('empJobchange:list')")
    public FebsResponse empJobchangeList(QueryRequest request, EmpJobChange empJobchange) {
        Map
                <String, Object> dataTable = FebsUtil.getDataTable(this.empJobchangeService.findEmpJobChanges(request, empJobchange));
        Map <String, Object> dataTable = FebsUtil.getDataTable(this.empJobchangeService.findEmpJobChanges(request, empJobchange));
        return new FebsResponse().data(dataTable);
    }
    @ApiOperation(value = "导出员工")
    @RequestMapping(value = "export",method= RequestMethod.POST)
    @ControllerEndpoint(operation = "导出用户数据", exceptionMessage = "导出Excel失败")
    public void export(QueryRequest request, EmpJobChange empJobchange, HttpServletResponse response) {
        request.setPageSize(this.empJobchangeService.count());
        List<Map<String,Object>> records = this.empJobchangeService.findEmpJobChanges(request, empJobchange).getRecords();
        List<EmpJobChange> list = records.parallelStream().map(i->{
            i.put("changeDate", DateUtil.parse(i.get("changeDate").toString()));
            return BeanUtil.toBean(i,EmpJobChange.class);
        }).collect(Collectors.toList());
        ExcelKit.$Export(EmpJobChange.class, response).downXlsx(list, false);
    }
    @ApiOperation(value = "员工调岗记录增加")
    @PostMapping
    @PreAuthorize("hasAuthority('empJobchange:add')")