Merge branch 'test_elder_cedoo' into 'test'
Test elder cedoo
See merge request root/zhihuishequ!45
New file |
| | |
| | | package com.panzhihua.common.model.dtos.community; |
| | | |
| | | import com.google.common.base.CaseFormat; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import javax.validation.constraints.NotNull; |
| | | import javax.validation.constraints.Pattern; |
| | | |
| | | /** |
| | | * 高领老人分页查询条件 |
| | | * |
| | | * @author cedoo email:cedoo(a)qq.com |
| | | * @version 1.0 |
| | | * @since 1.0 |
| | | * */ |
| | | @Data |
| | | @ApiModel("生存认证记录分页查询条件") |
| | | public class PageEldersAuthRecordDTO { |
| | | |
| | | @ApiModelProperty(value = "分页-当前页数,默认1", example = "1", required = true) |
| | | @NotNull |
| | | private Long pageNum = 1L; |
| | | |
| | | @ApiModelProperty(value = "分页-每页记录数,默认10", example = "10", required = true) |
| | | @NotNull |
| | | private Long pageSize = 10L; |
| | | |
| | | @ApiModelProperty(value = "排序方式: asc/desc(默认)", example = "desc", position = 4) |
| | | @Pattern(regexp = "asc|desc|ASC|DESC") |
| | | private String sortType="desc"; |
| | | |
| | | @ApiModelProperty(value = "排序字段, 默认createAt", example = "createAt", position = 3) |
| | | private String sortAttr="createAt"; |
| | | |
| | | @ApiModelProperty(value = "排序列", example = "create_at", hidden = true) |
| | | public String getSortColumns(){ |
| | | String dbColumn = CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE, sortAttr); |
| | | return dbColumn; |
| | | } |
| | | |
| | | @ApiModelProperty(value = "姓名", example = "妞妞") |
| | | private String name; |
| | | |
| | | @ApiModelProperty(value = "身份证号码") |
| | | private String idCard; |
| | | |
| | | @ApiModelProperty(value = "认证方式(1.视频认证 2.人脸核验)",example = "1") |
| | | private Integer type; |
| | | |
| | | @ApiModelProperty(value = "认证时间(月份)",example = "1") |
| | | private Integer month; |
| | | |
| | | } |
New file |
| | |
| | | package com.panzhihua.common.model.vos.community; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * |
| | | * @author cedoo email:cedoo(a)qq.com |
| | | * @version 1.0 |
| | | * @since 1.0 |
| | | * @date 2021-06-09 |
| | | * */ |
| | | @Data |
| | | @ApiModel("高龄认证记录返回参数") |
| | | public class ComEldersAuthRecordForCommunityVO { |
| | | |
| | | @ApiModelProperty(value = "ID") |
| | | private Long id; |
| | | |
| | | @ApiModelProperty(value = "创建人") |
| | | private Long createBy; |
| | | |
| | | @ApiModelProperty(value = "认证时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date createAt; |
| | | |
| | | @ApiModelProperty(value = "更新人") |
| | | private Long updateBy; |
| | | |
| | | @ApiModelProperty(value = "更新时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date updateAt; |
| | | |
| | | @ApiModelProperty(value = "身份证") |
| | | private String idCard; |
| | | |
| | | @ApiModelProperty(value = "年龄") |
| | | private Integer age; |
| | | |
| | | |
| | | @ApiModelProperty(value = "认证人姓名") |
| | | private String authUserName; |
| | | |
| | | @ApiModelProperty(value = "视频地址") |
| | | private String videoUrl; |
| | | |
| | | @ApiModelProperty(value = "申请人") |
| | | private Long sumitUserId; |
| | | |
| | | @ApiModelProperty(value = "户籍地") |
| | | private String domicile; |
| | | |
| | | @ApiModelProperty(value = "状态") |
| | | private String status; |
| | | |
| | | @ApiModelProperty(value = "出生日期") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | private Date birthDay; |
| | | |
| | | @ApiModelProperty(value = "申请人姓名") |
| | | private String sumitUserName; |
| | | |
| | | @ApiModelProperty(value = "认证方式(1.视频认证 2.人脸核验)") |
| | | private Integer type; |
| | | |
| | | @ApiModelProperty(value = "申请人账号") |
| | | private String sumitUserAccount; |
| | | |
| | | } |
| | |
| | | @ApiModelProperty(value = "创建人") |
| | | private Long createBy; |
| | | |
| | | @ApiModelProperty(value = "创建时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
| | | @ApiModelProperty(value = "认证时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") |
| | | private Date createAt; |
| | | |
| | | @ApiModelProperty(value = "更新人") |
| | |
| | | @ApiModelProperty(value = "家庭成员ID") |
| | | private Long familyUserId; |
| | | |
| | | @ApiModelProperty(value = "核验类型(1.视频认证 2.人脸核验)") |
| | | private Integer type; |
| | | |
| | | } |
| | |
| | | private Long createBy; |
| | | |
| | | @ApiModelProperty(value = "创建时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm", timezone = "GMT+8") |
| | | private Date createAt; |
| | | |
| | | @ApiModelProperty(value = "更新人") |
| | |
| | | */ |
| | | @PostMapping("/elders/edit") |
| | | R editEldersByApp(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO); |
| | | |
| | | |
| | | /** |
| | | * 分页查询生存认证记录 |
| | | * @param pageEldersAuthElderlyDTO |
| | | * @return |
| | | */ |
| | | @PostMapping("/elders/records/page") |
| | | R pageQueryEldersAuthRecord(@RequestBody PageEldersAuthRecordDTO pageEldersAuthElderlyDTO); |
| | | |
| | | /** |
| | | * |
| | | * @param communityId |
| | | * @param type |
| | | * @return |
| | | */ |
| | | @PostMapping("/elders/setCommunityAuthType") |
| | | R setCommunityAuthType(@RequestParam("communityId")Long communityId,@RequestParam("type") Integer type); |
| | | } |
New file |
| | |
| | | package com.panzhihua.community_backstage.api; |
| | | |
| | | |
| | | import com.alibaba.excel.EasyExcel; |
| | | import com.panzhihua.common.controller.BaseController; |
| | | import com.panzhihua.common.listen.ComEldersAuthElderlyExcelListen; |
| | | import com.panzhihua.common.model.dtos.community.EldersAuthElderlyDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageEldersAuthElderlyDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageEldersAuthRecordDTO; |
| | | import com.panzhihua.common.model.vos.R; |
| | | import com.panzhihua.common.model.vos.community.ComEldersAuthElderlyVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthDetailsVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthElderlyExcelVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthRecordExcelVO; |
| | | import com.panzhihua.common.service.community.CommunityService; |
| | | import com.panzhihua.common.utlis.ClazzUtils; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | | import org.springframework.validation.annotation.Validated; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.io.IOException; |
| | | import java.io.InputStream; |
| | | |
| | | /** |
| | | * |
| | | * @author cedoo email:cedoo(a)qq.com |
| | | * @version 1.0 |
| | | * @since 1.0 |
| | | * */ |
| | | @Slf4j |
| | | @RestController |
| | | @RequestMapping("/eldersauthrecords") |
| | | @Api(tags = {"高龄认证"}) |
| | | public class EldersAuthRecordsApi extends BaseController { |
| | | |
| | | // FTP 登录用户名 |
| | | @Value("${ftp.username}") |
| | | private String userName; |
| | | // FTP 登录密码 |
| | | @Value("${ftp.password}") |
| | | private String password; |
| | | // FTP 服务器地址IP地址 |
| | | @Value("${ftp.host}") |
| | | private String host; |
| | | // FTP 端口 |
| | | @Value("${ftp.port}") |
| | | private int port; |
| | | @Value("${ftp.url}") |
| | | private String url; |
| | | @Value("${excel.userurl}") |
| | | private String excelUrl; |
| | | |
| | | //@Value("${excel.elderrecordurl}") |
| | | //private String elderRecordUrl = "http://panzhihua.nhys.cdnhxx.com/web/%e8%bd%a6%e8%be%86%e5%af%bc%e5%85%a5%e6%a8%a1%e6%9d%bf.xlsx"; |
| | | |
| | | @Resource |
| | | private CommunityService communityService; |
| | | |
| | | /** |
| | | * 生存认证记录 |
| | | * @param pageEldersAuthElderlyDTO |
| | | * @return |
| | | */ |
| | | @PostMapping("/page") |
| | | @ApiOperation(value = "生存认证记录", response = ComEldersAuthElderlyVO.class) |
| | | R query(@Validated @RequestBody PageEldersAuthRecordDTO pageEldersAuthElderlyDTO){ |
| | | ClazzUtils.setIfStringIsEmpty(pageEldersAuthElderlyDTO); |
| | | return communityService.pageQueryEldersAuthRecord(pageEldersAuthElderlyDTO); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查询高龄认证详细信息 |
| | | * @param id 高龄认证 id |
| | | * @return 查找结果 |
| | | */ |
| | | @GetMapping("/{id}") |
| | | @ApiOperation(value = "查询高龄认证详细信息", response = EldersAuthDetailsVO.class) |
| | | R<EldersAuthDetailsVO> details(@PathVariable("id") Long id){ |
| | | return communityService.eldersAuthDetails(id); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 生存认证记录导入 |
| | | * @param file |
| | | * @return |
| | | */ |
| | | /*@PostMapping("/import") |
| | | @ApiOperation(value = "生存认证记录导入", response = R.class) |
| | | R importRecord(@RequestParam MultipartFile file){ |
| | | InputStream inputStream; |
| | | try { |
| | | inputStream = file.getInputStream(); |
| | | EasyExcel.read(inputStream, EldersAuthRecordExcelVO.class, new ComEldersAuthElderlyExcelListen(communityService, getCommunityId(),getUserId())).sheet().doRead(); |
| | | } catch (IOException e) { |
| | | e.printStackTrace(); |
| | | log.error("导入模板失败【{}】", e.getMessage()); |
| | | } |
| | | return R.ok(); |
| | | |
| | | }*/ |
| | | |
| | | /** |
| | | * 生存认证记录导入 |
| | | * @param id 高龄认证 id |
| | | * @return 查找结果 |
| | | */ |
| | | @GetMapping("/importTemplate") |
| | | @ApiOperation(value = "生存认证记录导入模板", response = EldersAuthDetailsVO.class) |
| | | R importTemplate(@PathVariable("id") Long id){ |
| | | //return R.ok(elderRecordUrl); |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 设置当前社区认证方式 |
| | | * @return 查找结果 |
| | | */ |
| | | @PutMapping("/authType/{type}") |
| | | @ApiOperation(value = "设置当前社区认证方式:核验类型(1.视频认证 2.人脸核验)", response = R.class) |
| | | R setAuthType(@PathVariable("type")Integer type){ |
| | | if(type!=1&&type!=2){ |
| | | return R.fail("参数错误"); |
| | | } |
| | | return communityService.setCommunityAuthType(this.getCommunityId(), type); |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | } |
| | |
| | | R eldersAuthQuery(@RequestBody PageEldersAuthDTO pageEldersAuthDTO){ |
| | | return eldersAuthService.queryExportData(pageEldersAuthDTO); |
| | | } |
| | | |
| | | /** |
| | | * 设置社区认证方式 |
| | | * @param communityId 社区ID |
| | | * @param type 核验类型(1.视频认证 2.人脸核验) |
| | | * @return |
| | | */ |
| | | @PostMapping("/elders/setCommunityAuthType") |
| | | R setCommunityAuthType(@RequestParam("communityId")Long communityId,@RequestParam("type") Integer type){ |
| | | return eldersAuthService.setCommunityAuthType(communityId, type); |
| | | } |
| | | } |
| | |
| | | package com.panzhihua.service_community.api; |
| | | |
| | | import com.panzhihua.common.model.dtos.community.PageComOpsHouseDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageEldersAuthRecordDTO; |
| | | import com.panzhihua.common.model.dtos.elders.ComEldersAuthGetResultDTO; |
| | | import com.panzhihua.common.model.dtos.elders.ComEldersAuthPageDTO; |
| | | import com.panzhihua.common.model.dtos.elders.ComEldersAuthUserAddAppDTO; |
| | |
| | | return eldersAuthService.communityAuthType(eldersAuthTypeQueryDTO); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 分页查询生存认证记录 |
| | | * @param pageEldersAuthElderlyDTO |
| | | * @return |
| | | */ |
| | | @PostMapping("/records/page") |
| | | R pageQueryEldersAuthRecord(@RequestBody PageEldersAuthRecordDTO pageEldersAuthElderlyDTO){ |
| | | return eldersAuthService.pageQueryEldersAuthRecord(pageEldersAuthElderlyDTO); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | import com.panzhihua.common.model.dtos.community.ExcelElderAuthDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageComEldersRecordsDTO; |
| | | import com.panzhihua.common.model.dtos.community.PageEldersAuthDTO; |
| | | import com.panzhihua.common.model.vos.community.ComEldersAuthElderlyDetailsVO; |
| | | import com.panzhihua.common.model.vos.community.ComEldersAuthRecordVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthDetailsVO; |
| | | import com.panzhihua.common.model.vos.community.EldersAuthVO; |
| | | import com.panzhihua.common.model.dtos.community.PageEldersAuthRecordDTO; |
| | | import com.panzhihua.common.model.vos.community.*; |
| | | import com.panzhihua.common.model.vos.user.SysUserVO; |
| | | import com.panzhihua.service_community.model.dos.EldersAuthDO; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | |
| | | |
| | | @Select("<script> " + |
| | | "SELECT ea.id, ea.create_at, ea.create_by, ea.update_by, ea.update_at," + |
| | | " ea.AUTH_USER_NAME , ea.ID_CARD, ea.BIRTH_DAY, ea.FAMILY_USER_ID, " + |
| | | " ea.AUTH_USER_NAME , ea.ID_CARD, ea.BIRTH_DAY, ea.FAMILY_USER_ID, ea.type, " + |
| | | " ea.DOMICILE, ea.SUMIT_USER_ID, u.phone as submitUserAccount , ea.VIDEO_URL , ea.FAMILY_USER_ID, " + |
| | | " u.name as submitUserName, ROUND(DATEDIFF(CURDATE(), ea.BIRTH_DAY)/365.2422) as age \n" + |
| | | " u.name as submitUserName, ea.age \n" + |
| | | "FROM com_elders_auth ea LEFT JOIN sys_user u ON ea.SUMIT_USER_ID = u.user_id\n" + |
| | | " where ea.id = #{id}" + |
| | | "</script>") |
| | |
| | | |
| | | @Select("select user_id,id_card,name from sys_user where user_id = #{userId}") |
| | | SysUserVO getSysUserByUserId(@Param("userId")Long userId); |
| | | |
| | | |
| | | @Select("<script> " + |
| | | " SELECT e.ID,e.CREATE_BY,e.CREATE_AT, e.UPDATE_BY, e.UPDATE_AT, e.ID_CARD, e.AUTH_USER_NAME, e.VIDEO_URL," + |
| | | " e.SUMIT_USER_ID, e.DOMICILE, e.STATUS, e.BIRTH_DAY, e.type, e.age, e.verification_result, u.name as sumitUserName, u.phone as sumitUserAccount " + |
| | | " FROM ( " + |
| | | " SELECT MAX(id) AS id , DATE_FORMAT(create_at, '%Y-%m') AS yearMonth " + |
| | | " FROM com_elders_auth " + |
| | | " GROUP BY id_card, yearMonth " + |
| | | " ) t " + |
| | | " left join com_elders_auth e on t.id = e.id " + |
| | | " LEFT JOIN sys_user u ON e.SUMIT_USER_ID = u.user_id " + |
| | | "<where>" + |
| | | " <if test='pageEldersAuthRecordDTO.name!=null'>\n" + |
| | | " AND e.AUTH_USER_NAME like concat('%', #{pageEldersAuthRecordDTO.name}, '%')" + |
| | | "</if>" + |
| | | " <if test='pageEldersAuthRecordDTO.idCard!=null'>\n" + |
| | | " AND e.ID_CARD like concat('%', #{pageEldersAuthRecordDTO.idCard}, '%')\n" + |
| | | "</if>" + |
| | | " <if test='pageEldersAuthRecordDTO.type!=null'>\n" + |
| | | " AND e.type = #{pageEldersAuthRecordDTO.type}\n" + |
| | | "</if>" + |
| | | " <if test='pageEldersAuthRecordDTO.month!=null'>\n" + |
| | | " AND month(e.CREATE_BY) = #{pageEldersAuthRecordDTO.month}\n" + |
| | | "</if>\n" + |
| | | "</where>\n" + |
| | | "<if test='pageEldersAuthRecordDTO.sortColumns!=null'>\n" + |
| | | "ORDER BY e.${pageEldersAuthRecordDTO.sortColumns} ${pageEldersAuthRecordDTO.sortType}\n" + |
| | | "</if> " + |
| | | "</script>") |
| | | List<ComEldersAuthRecordForCommunityVO> selectCommunityEldersRecordByPage(Page page, @Param("pageEldersAuthRecordDTO") PageEldersAuthRecordDTO pageEldersAuthRecordDTO); |
| | | |
| | | } |
| | |
| | | */ |
| | | private String value; |
| | | /** |
| | | * 参数描述 列: describe |
| | | * 参数描述 列: description |
| | | */ |
| | | @TableField("`describe`") |
| | | private String describe; |
| | | private String description; |
| | | /** |
| | | * 创建时间 列: create_at |
| | | */ |
| | |
| | | * @return |
| | | */ |
| | | R communityAuthType(EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO); |
| | | |
| | | /** |
| | | * 分页查询生存认证记录 |
| | | * @param pageEldersAuthElderlyDTO |
| | | * @return |
| | | */ |
| | | R pageQueryEldersAuthRecord(PageEldersAuthRecordDTO pageEldersAuthElderlyDTO); |
| | | |
| | | /** |
| | | * 设置社区认证方式 |
| | | * @param communityId 社区ID |
| | | * @param type 核验类型(1.视频认证 2.人脸核验) |
| | | * @return |
| | | */ |
| | | R setCommunityAuthType(Long communityId, Integer type); |
| | | |
| | | } |
| | |
| | | @Override |
| | | public R getEldersAuthElderlyById(Long id) { |
| | | ComEldersAuthElderlyDO comEldersAuthElderlyDO = this.baseMapper.selectById(id); |
| | | if(comEldersAuthElderlyDO==null){ |
| | | return R.fail("记录不存在"); |
| | | } |
| | | ComEldersAuthElderlyVO comEldersAuthElderlyVO = new ComEldersAuthElderlyVO(); |
| | | BeanUtils.copyProperties(comEldersAuthElderlyDO,comEldersAuthElderlyVO); |
| | | return R.ok(comEldersAuthElderlyVO); |
| | |
| | | sysConfDO.setCode("ELDER_AUTH_TYPE"); |
| | | sysConfDO.setName("高龄认证类型"); |
| | | sysConfDO.setValue(2+"");//核验类型(1.视频认证 2.人脸核验) |
| | | sysConfDO.setDescribe("高龄认证默认添加的核验类型"); |
| | | sysConfDO.setDescription("高龄认证默认添加的核验类型"); |
| | | sysConfDO.setCommunityId(communityId); |
| | | sysConfDO.setCreateBy(eldersAuthTypeQueryDTO.getUserId()); |
| | | int inserted = sysConfDao.insert(sysConfDO); |
| | |
| | | domicile = "暂无"; |
| | | } |
| | | eldersAuthDO.setDomicile(domicile); |
| | | eldersAuthDO.setBirthDay(IdCard.birthDay(authUserDO.getIdCard())); |
| | | eldersAuthDO.setBirthDay(IdcardUtil.getBirthDate(authUserDO.getIdCard())); |
| | | eldersAuthDO.setFamilyUserId(authUserDO.getId()); |
| | | eldersAuthDO.setAge(IdcardUtil.getAgeByIdCard(eldersAuthDO.getIdCard())); |
| | | eldersAuthDO.setType(2); |
| | |
| | | } |
| | | } |
| | | } |
| | | authUser.setAge(AgeUtils.getAgeFromBirthTimes(IdCard.birthDay(authUser.getIdCard()).getTime())); |
| | | authUser.setAge(IdcardUtil.getAgeByIdCard(authUser.getIdCard())); |
| | | }); |
| | | } |
| | | return R.ok(authUserAppVOIPage); |
| | |
| | | } |
| | | return R.fail(); |
| | | } |
| | | @Override |
| | | public R pageQueryEldersAuthRecord(PageEldersAuthRecordDTO pageEldersAuthElderlyDTO) { |
| | | Page page = new Page(); |
| | | page.setCurrent(pageEldersAuthElderlyDTO.getPageNum()); |
| | | page.setSize(pageEldersAuthElderlyDTO.getPageSize()); |
| | | return R.ok(eldersAuthDAO.selectCommunityEldersRecordByPage(page, pageEldersAuthElderlyDTO)); |
| | | } |
| | | |
| | | @Override |
| | | public R setCommunityAuthType(Long communityId, Integer type) { |
| | | List<SysConfDO> authConf = |
| | | sysConfDao.selectList(new LambdaQueryWrapper<SysConfDO>() |
| | | .eq(SysConfDO::getCommunityId, communityId) |
| | | .eq(SysConfDO::getCode, "ELDER_AUTH_TYPE") |
| | | .orderByDesc(SysConfDO::getCreateAt)); |
| | | if(authConf!=null && authConf.size()>0){ |
| | | SysConfDO first = authConf.get(0); |
| | | first.setValue(type+""); |
| | | int updated = sysConfDao.updateById(first); |
| | | if(updated == 1){ |
| | | return R.ok(); |
| | | } |
| | | } |
| | | return R.fail(); |
| | | } |
| | | } |