package com.zhongzheng.controller.base; import cn.afterturn.easypoi.excel.entity.ExportParams; import com.zhongzheng.common.annotation.Log; import com.zhongzheng.common.core.controller.BaseController; import com.zhongzheng.common.core.domain.AjaxResult; import com.zhongzheng.common.core.domain.model.LoginUser; import com.zhongzheng.common.core.page.TableDataInfo; import com.zhongzheng.common.enums.BusinessType; import com.zhongzheng.common.utils.ServletUtils; import com.zhongzheng.common.utils.poi.ExcelUtil; import com.zhongzheng.framework.web.service.TokenService; import com.zhongzheng.modules.base.bo.UserProfileEditBo; import com.zhongzheng.modules.base.bo.UserProfileQueryBo; import com.zhongzheng.modules.base.service.IUserProfileService; import com.zhongzheng.modules.base.vo.UserProfileExportGaiVo; import com.zhongzheng.modules.base.vo.UserProfileExportVo; import com.zhongzheng.modules.base.vo.UserProfileVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.*; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 填写资料审核Controller * * @author ruoyi * @date 2021-12-20 */ @Api(value = "填写盖章审核控制器", tags = {"填写盖章审核控制器"}) @RequiredArgsConstructor(onConstructor_ = @Autowired) @RestController @RequestMapping("/base/profileStamp") public class UserProfileStampController extends BaseController { private final IUserProfileService iUserProfileService; private final TokenService tokenService; /** * 查询填写资料审核列表 */ @ApiOperation("查询填写盖章审核列表") @PreAuthorize("@ss.hasPermi('system:profile:list')") @GetMapping("/list") public TableDataInfo list(UserProfileQueryBo bo) { startPage(); //2为承诺书审核 bo.setTypeStatus(2L); List list = iUserProfileService.queryList(bo); return getDataTable(list); } /** * 查询填写资料审核列表 */ @ApiOperation("查询填写盖章审记录列表") @PreAuthorize("@ss.hasPermi('system:profile:list')") @GetMapping("/listRecord") public TableDataInfo listRecord(UserProfileQueryBo bo) { startPage(); bo.setTypeStatus(2L); List list = iUserProfileService.listRecord(bo); return getDataTable(list); } /** * 获取填写资料审核详细信息 */ @ApiOperation("获取填写盖章审核详细信息") @PreAuthorize("@ss.hasPermi('system:profile:query')") @GetMapping("/{id}") public AjaxResult getInfo(@PathVariable("id" ) Long id) { return AjaxResult.success(iUserProfileService.queryById(id)); } /** * 修改填写资料审核 */ @ApiOperation("审核盖章") @PreAuthorize("@ss.hasPermi('system:profile:edit')") @Log(title = "填写盖章审核", businessType = BusinessType.UPDATE) @PostMapping() public AjaxResult edit(@RequestBody UserProfileEditBo bo) { LoginUser loginUser = tokenService.getLoginUser(ServletUtils.getRequest()); return toAjax(iUserProfileService.updateAuditByEditBo(bo,loginUser) ? 1 : 0); } /** * 导出资料审核列表 */ @ApiOperation("导出盖章审核列表") @PreAuthorize("@ss.hasPermi('system:profile:export')") @Log(title = "客户端用户", businessType = BusinessType.EXPORT) @GetMapping("/export") public AjaxResult> export(UserProfileQueryBo bo) { String fileName = ""; if(bo.getStatus().get(0)==0){ fileName="全部"; } if(bo.getStatus().get(0)==1){ fileName="通过"; } if(bo.getStatus().get(0)==2){ fileName="待审"; } if(bo.getStatus().get(0)==3){ fileName="不通过"; } startPage(); //2为资料审核 bo.setTypeStatus(2L); if(bo.getStatus().get(0)==0){ bo.getStatus().remove(0); bo.setStatus(bo.getStatus()); } Map map = iUserProfileService.exportPo(bo); List list = (List)map.get("list"); ExcelUtil util = new ExcelUtil(UserProfileExportGaiVo.class); String timeStr= LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); ExportParams deptExportParams = new ExportParams(); // 设置sheet得名称 deptExportParams.setSheetName("表1"); Map deptExportMap = new HashMap<>(); deptExportMap.put("title", deptExportParams); deptExportMap.put("entity", UserProfileExportGaiVo.class); // sheet中要填充得数据 deptExportMap.put("data", list); List> sheetsList = new ArrayList<>(); sheetsList.add(deptExportMap); map.put("excel",util.exportEasyExcel(sheetsList, "填写盖章审核-"+fileName+"-学员数据-"+timeStr)); map.remove("list"); return AjaxResult.success(map); } }