package com.panzhihua.service_community.api; import java.util.List; import javax.annotation.Resource; import cn.hutool.core.util.IdcardUtil; import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.dtos.community.elder.ElderAuthStatisticHeaderDTO; import com.panzhihua.common.model.dtos.community.elder.PageElderAuthStatisticDTO; import com.panzhihua.common.model.dtos.community.elder.PagePensionAuthStatisticDTO; import com.panzhihua.common.model.dtos.community.elder.SignElderAuthStatisticDTO; import com.panzhihua.common.model.vos.community.*; import com.panzhihua.service_community.model.dos.ComEldersAuthElderlyDO; import com.panzhihua.service_community.service.*; import io.swagger.annotations.ApiOperation; import org.springframework.beans.BeanUtils; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.*; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.panzhihua.common.exceptions.ServiceException; import com.panzhihua.common.model.dtos.elders.ComEldersAuthGetResultDTO; import com.panzhihua.common.model.dtos.elders.ComEldersAuthPageDTO; import com.panzhihua.common.model.dtos.elders.ComEldersAuthUserAddAppDTO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.elders.ComElderAuthUserDetailVO; import com.panzhihua.common.utlis.DateUtils; import com.panzhihua.service_community.model.dos.ComEldersAuthUserDO; import com.panzhihua.service_community.model.dos.EldersAuthDO; import lombok.extern.slf4j.Slf4j; /** * @ClasssName EldersAuthApi * @Description TODO * @Author cedoo * @Date 2021/6/9 * @Version 1.0 **/ @Slf4j @RestController @RequestMapping("/elders") public class EldersAuthApi { @Resource private ComEldersAuthUserService comEldersAuthUserService; @Resource private EldersAuthService eldersAuthService; @Resource private ComEldersAuthElderlyService comEldersAuthElderlyService; @Resource private ComElderAuthRecordsService comElderAuthRecordsService; @Resource private ComPensionAuthRecordService comPensionAuthRecordService; @Resource private ComPensionAuthHistoryRecordService comPensionAuthHistoryRecordService; @PostMapping("/getAuth") public R getAuth(@RequestParam("authUserId") Long authUserId) { ComEldersAuthUserDO authUserDO = comEldersAuthUserService.getById(authUserId); if (authUserDO == null) { return R.fail("未查询到老人信息"); } //判断当前提交用户是否符合认证条件 ComEldersAuthElderlyDO authElderlyDO = comEldersAuthElderlyService.getOne(new QueryWrapper() .lambda().eq(ComEldersAuthElderlyDO::getId,authUserDO.getBigAgeId())); if(authElderlyDO == null){ return R.fail("未查询到老人信息"); } int age = IdcardUtil.getAgeByIdCard(authElderlyDO.getIdCard()); if(age < 80 || authElderlyDO.getIsBigAge().equals(ComEldersAuthElderlyDO.isBigAge.no) || authElderlyDO.getIsExist().equals(ComEldersAuthElderlyDO.isExist.no)){ return R.fail("未满足认证条件"); } if (authUserDO.getIsAuth().equals(ComEldersAuthUserDO.isAuth.yes)) { List eldersAuthDOList = eldersAuthService.list(new QueryWrapper().lambda() .eq(EldersAuthDO::getType, 2).eq(EldersAuthDO::getFamilyUserId,authUserId) .ge(EldersAuthDO::getCreateAt, DateUtils.getFirstDayOfMonth())); if (!eldersAuthDOList.isEmpty()) { return R.fail("该老人已认证"); } } ComElderAuthUserDetailVO authUserDetailVO = new ComElderAuthUserDetailVO(); BeanUtils.copyProperties(authUserDO, authUserDetailVO); return R.ok(authUserDetailVO); } /** * 人脸核验新增高龄认证记录 * * @param authGetResultDTO * 请求参数 * @return 新增结果 */ @PostMapping("/add/auth") public R addAuth(@RequestBody ComEldersAuthGetResultDTO authGetResultDTO) { try { return eldersAuthService.addAuthByEldersApp(authGetResultDTO); } catch (Exception e) { throw new ServiceException(e.getMessage()); } } /** * 高龄认证分页接口 * * @param authPageDTO * 请求参数 * @return 查询结果 */ @PostMapping("/page/auth") public R pageEldersByApp(@RequestBody ComEldersAuthPageDTO authPageDTO) throws Exception { return eldersAuthService.pageEldersByApp(authPageDTO); } /** * 添加高龄老人接口 * * @param authUserAddAppDTO * 请求参数 * @return 添加结果 */ @PostMapping("/add") public R addEldersByApp(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO) { return eldersAuthService.addEldersByApp(authUserAddAppDTO); } /** * 修改高龄老人接口 * * @param authUserAddAppDTO * 请求参数 * @return 修改结果 */ @PostMapping("/edit") public R editEldersByApp(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO) { return eldersAuthService.editEldersByApp(authUserAddAppDTO); } /** * 查询老龄认证记录 * * @param pageComEldersRecordsDTO * @return */ @PostMapping("/records") R queryEldersRecord(@RequestBody PageComEldersRecordsDTO pageComEldersRecordsDTO) { return eldersAuthService.queryEldersRecord(pageComEldersRecordsDTO); } /** * 查询老龄认证记录详细 * * @param id * @return */ @PostMapping("/records/deatils") R comEldersAuthElderlyDetails(@RequestParam("id") Long id) { return eldersAuthService.comEldersAuthElderlyDetails(id); } /** * * * 查询老龄认证社区认证方式 * * @param eldersAuthTypeQueryDTO * @return */ @PostMapping("/authType") public R elderAuthType(@RequestBody EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO) { return eldersAuthService.communityAuthType(eldersAuthTypeQueryDTO); } /** * 分页查询生存认证记录 * * @param pageEldersAuthElderlyDTO * @return */ @PostMapping("/records/page") R pageQueryEldersAuthRecord(@RequestBody PageEldersAuthRecordDTO pageEldersAuthElderlyDTO) { return eldersAuthService.pageQueryEldersAuthRecord(pageEldersAuthElderlyDTO); } @PostMapping("/getAuthHistoryList") public R getAuthHistoryList(@RequestBody PageEldersAuthHistoryDTO pageEldersAuthElderlyDTO) { return eldersAuthService.getAuthHistoryList(pageEldersAuthElderlyDTO); } @PostMapping("/getAuthHistoryExport") public R getAuthHistoryExport(@RequestBody PageEldersAuthHistoryDTO pageEldersAuthElderlyDTO) { return eldersAuthService.getAuthHistoryExport(pageEldersAuthElderlyDTO); } @PostMapping("/auth/task") public R timedTaskEldersAuthJobHandler() { return eldersAuthService.timedTaskEldersAuthJobHandler(); } /** * 身份认证定时任务 * @return 执行结果 */ @PostMapping("/auth/record/task") public R timedTaskEldersRecordAuthJobHandler() { return eldersAuthService.timedTaskEldersRecordAuthJobHandler(); } //2021-8-30 身份认证改版(高龄老人认证管理)接口 /** * 分页查询高龄老人认证记录 pageElderAuthRecords 分页查询高龄老人认证记录 * @param pageElderAuthRecordsDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/page") public R pageElderAuthRecords(@RequestBody PageElderAuthRecordsDTO pageElderAuthRecordsDTO) { return comElderAuthRecordsService.pageElderAuthRecords(pageElderAuthRecordsDTO); } /** * 根据高龄认证记录id查询详情 detailElderAuthRecords 根据高龄认证记录id查询详情 * @param authRecordId 高龄认证记录id * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @GetMapping("/authRecords/detail") public R detailElderAuthRecords(@RequestParam(value = "authRecordId") Long authRecordId) { return comElderAuthRecordsService.detailElderAuthRecords(authRecordId); } /** * 高龄认证审核 examineElderAuthRecords 高龄认证审核 * @param comElderAuthRecordVO 高龄认证审核参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/examine") public R examineElderAuthRecords(@RequestBody ComElderAuthRecordVO comElderAuthRecordVO) { return comElderAuthRecordsService.examineElderAuthRecords(comElderAuthRecordVO); } /** * 高龄认证标记 examineElderAuthRecords 高龄认证标记 * @param comElderAuthRecordVO 高龄认证标记参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/sign") public R signElderAuthRecords(@RequestBody ComElderAuthRecordVO comElderAuthRecordVO) { return comElderAuthRecordsService.signElderAuthRecords(comElderAuthRecordVO); } /** * 根据高龄认证记录id批量查询 getElderAuthRecordsByIds 根据高龄认证记录id批量查询 * @param ids 高龄认证记录id集合 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/getList") public R getElderAuthRecordsByIds(@RequestBody List ids){ return comElderAuthRecordsService.getElderAuthRecordsByIds(ids); } /** * 批量导入高龄老人线下认证记录 listSaveElderAuthRecordExcelVO 批量导入高龄老人线下认证记录 * @param list 高龄老人线下认证记录数据 * @param communityId 社区id * @param userId 登录人id * @return R 导入结果 * @author txb * @date 2021/9/01 15:03 */ @Transactional(rollbackFor = Exception.class) @PostMapping("/authRecords/underLine/import") public R listSaveElderAuthRecordExcelVO(@RequestBody List list, @RequestParam(value = "communityId") Long communityId, @RequestParam(value = "userId") Long userId){ return comElderAuthRecordsService.listSaveElderAuthRecordExcelVO(list, communityId, userId); } /** * 导出高龄认证记录 exportElderAuthRecordsStatistic 导出高龄认证记录 * @param pageElderAuthRecordsDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/statistic/export") public R exportElderAuthRecordsStatistic(@RequestBody PageElderAuthStatisticDTO pageElderAuthRecordsDTO){ return comElderAuthRecordsService.exportElderAuthRecordsStatistic(pageElderAuthRecordsDTO); } /** * 导出高龄认证记录 exportElderAuthRecords 导出高龄认证记录 * @param pageElderAuthRecordsDTO 查询参数 * @return R 查询结果 * @date 2021/9/02 11:03 */ @PostMapping("/authRecords/export") public R exportElderAuthRecords(@RequestBody PageElderAuthRecordsDTO pageElderAuthRecordsDTO){ return comElderAuthRecordsService.export(pageElderAuthRecordsDTO); } /** * 分页查询养老金人员认证记录 pagePensionAuthRecords 分页查询养老金人员认证记录 * @param pageElderAuthRecordsDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/07 14:03 */ @PostMapping("/pensionAuthRecords/page") public R pagePensionAuthRecords(@RequestBody PageElderAuthRecordsDTO pageElderAuthRecordsDTO) { return comPensionAuthRecordService.pagePensionAuthRecords(pageElderAuthRecordsDTO); } /** * 根据养老认证记录id查询详情 detailPensionAuthRecords 根据养老认证记录id查询详情 * @param authRecordId 养老认证记录id * @return R 查询结果 * @author txb * @date 2021/9/07 11:03 */ @GetMapping("/pensionAuthRecords/detail") public R detailPensionAuthRecords(@RequestParam(value = "authRecordId") Long authRecordId) { return comPensionAuthRecordService.detailPensionAuthRecords(authRecordId); } /** * 养老认证审核 examinePensionAuthRecords 养老认证审核 * @param comPensionAuthRecordVO 养老认证审核参数 * @return R 查询结果 * @author txb * @date 2021/9/07 11:03 */ @PostMapping("/pensionAuthRecords/examine") public R examinePensionAuthRecords(@RequestBody ComPensionAuthRecordVO comPensionAuthRecordVO) { return comPensionAuthRecordService.examinePensionAuthRecords(comPensionAuthRecordVO); } /** * 养老认证标记 signPensionAuthRecords 养老认证标记 * @param comPensionAuthRecordVO 养老认证标记参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/pensionAuthRecords/sign") public R signPensionAuthRecords(@RequestBody ComPensionAuthRecordVO comPensionAuthRecordVO) { return comPensionAuthRecordService.signPensionAuthRecords(comPensionAuthRecordVO); } /** * 根据养老认证记录id批量查询 getPensionAuthRecordsByIds 根据养老认证记录id批量查询 * @param ids 养老认证记录id集合 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/pensionAuthRecords/getList") public R getPensionAuthRecordsByIds(@RequestBody List ids){ return comPensionAuthRecordService.getPensionAuthRecordsByIds(ids); } /** * 批量导入养老线下认证记录 listSavePensionAuthRecordExcelVO 批量导入养老线下认证记录 * @param list 养老线下认证记录数据 * @param communityId 社区id * @param userId 登录人id * @return R 导入结果 * @author txb * @date 2021/9/08 10:03 */ @Transactional(rollbackFor = Exception.class) @PostMapping("/pensionAuthRecords/underLine/import") R listSavePensionAuthRecordExcelVO(@RequestBody List list, @RequestParam(value = "communityId") Long communityId, @RequestParam(value = "userId") Long userId){ return comPensionAuthRecordService.listSavePensionAuthRecordExcelVO(list, communityId, userId); } /** * 高龄认证添加 * @param comElderAuthRecordVO * @return */ @PostMapping("/authRecord/add") R addAuthRecord(@RequestBody ComElderAuthRecordVO comElderAuthRecordVO){ return comElderAuthRecordsService.add(comElderAuthRecordVO); } /** * 养老认证添加 * @param comElderAuthRecordVO * @return */ @PostMapping("/pensionAuthRecord/add") R addPensionAuthRecordVO(@RequestBody ComElderAuthRecordVO comElderAuthRecordVO){ return comPensionAuthRecordService.add(comElderAuthRecordVO); } /** * 导出养老认证记录 exportPensionAuthRecordsStatistic 导出养老认证记录 * @param pageElderAuthRecordsDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/02 11:03 */ @PostMapping("/pensionAuthRecords/statistic/export") public R exportPensionAuthRecordsStatistic(@RequestBody PageElderAuthRecordsDTO pageElderAuthRecordsDTO){ return comPensionAuthRecordService.exportPensionAuthRecordsStatistic(pageElderAuthRecordsDTO); } /** * 设置当前社区养老认证方式:核验类型(1.视频认证 2.人脸核验) setPensionAuthType 设置当前社区养老认证方式:核验类型(1.视频认证 2.人脸核验) * @param communityId 社区id * @param type 检验类型 * @return R 设置结果 * @author txb * @date 2021/9/10 16:03 */ @PutMapping("/pensionAuthRecords/authType/{type}") public R setPensionAuthType(@RequestParam("communityId") Long communityId, @RequestParam("type") Integer type) { return comPensionAuthRecordService.setPensionAuthType(communityId, type); } /** * 查询养老认证社区认证方式 setPensionAuthType 查询养老认证社区认证方式 * @param eldersAuthTypeQueryDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/10 16:03 */ @PostMapping("/pensionAuthRecords/authtype") public R communityPensionAuthType(@RequestBody EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO) { return comPensionAuthRecordService.communityPensionAuthType(eldersAuthTypeQueryDTO); } /** * 身份认证定时任务 * @return 执行结果 */ @PostMapping("/authRecords/statistics") public R timedTaskElderAuthStatisticsJobHandler(){ return comElderAuthRecordsService.timedTaskElderAuthStatisticsJobHandler(); } /** * 定时任务每年3月1号0点统计养老认证本期应该认证总人数 * @return 执行结果 */ @PostMapping("/pensionAuthRecords/statistics") R timedTaskPensionAuthStatisticsJobHandler(){ return comPensionAuthRecordService.timedTaskPensionAuthStatisticsJobHandler(); } /** * 设置当前社区养老认证方式:核验类型(1.视频认证 2.人脸核验) * @param communityId 社区id * @param type 检验类型 * @return R 设置结果 * @author txb * @date 2021/9/10 16:03 */ @PutMapping("/new/authType/{type}") public R setAuthType(@RequestParam("communityId") Long communityId, @RequestParam("type") Integer type) { return eldersAuthService.setAuthType(communityId, type); } /** * 查询养老认证社区认证方式 setPensionAuthType 查询养老认证社区认证方式 * @param eldersAuthTypeQueryDTO 查询参数 * @return R 查询结果 * @author txb * @date 2021/9/10 16:03 */ @PostMapping("/new/authtype") public R communityAuthType(@RequestBody EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO) { return eldersAuthService.getAuthType(eldersAuthTypeQueryDTO); } /** * 高龄认证统计-分页查询 * @param pageElderAuthStatisticDTO 请求参数 * @return 高龄认证统计列表 */ @PostMapping("/auth/statistic/page") public R pageAuthStatisticAdmin(@RequestBody PageElderAuthStatisticDTO pageElderAuthStatisticDTO) { return eldersAuthService.pageAuthStatisticAdmin(pageElderAuthStatisticDTO); } /** * 高龄认证统计-标记 * @param signElderAuthStatisticDTO 请求参数 * @return 标记结果 */ @PostMapping("/auth/statistic/sign") public R signAuthStatisticAdmin(@RequestBody SignElderAuthStatisticDTO signElderAuthStatisticDTO) { return eldersAuthService.signAuthStatisticAdmin(signElderAuthStatisticDTO); } /** * 高龄认证统计-统计表头数据 * @param statisticHeaderDTO 请求参数 * @return 统计表头数据 */ @PostMapping("/auth/header/statistic") public R getAuthHeaderStatisticAdmin(@RequestBody ElderAuthStatisticHeaderDTO statisticHeaderDTO) { return eldersAuthService.getAuthHeaderStatisticAdmin(statisticHeaderDTO); } /** * 养老认证统计-分页查询 * @param pensionAuthStatisticDTO 请求参数 * @return 养老认证统列表 */ @PostMapping("/pension/auth/statistic/page") public R pagePensionAuthStatisticAdmin(@RequestBody PagePensionAuthStatisticDTO pensionAuthStatisticDTO) { return comPensionAuthHistoryRecordService.pagePensionAuthStatisticAdmin(pensionAuthStatisticDTO); } /** * 养老认证记标记 * @param signElderAuthStatisticDTO 请求参数 * @return 标记结果 */ @PostMapping("/pension/auth/statistic/sign") public R signPensionAuthStatisticAdmin(@RequestBody SignElderAuthStatisticDTO signElderAuthStatisticDTO) { return comPensionAuthHistoryRecordService.signPensionAuthStatisticAdmin(signElderAuthStatisticDTO); } /** * 养老认证表头统计 * @param statisticHeaderDTO 请求参数 * @return 统计结果 */ @PostMapping("/pension/auth/header/statistic") public R getPensionAuthHeaderStatisticAdmin(@RequestBody ElderAuthStatisticHeaderDTO statisticHeaderDTO) { return comPensionAuthHistoryRecordService.getPensionAuthHeaderStatisticAdmin(statisticHeaderDTO); } }