puhanshu
2022-08-16 43f0578e80af82ecae6c61b51bd0539c6b960603
springcloud_k8s_panzhihuazhihuishequ/applets/src/main/java/com/panzhihua/applets/api/EldersAuthApi.java
@@ -1,38 +1,44 @@
package com.panzhihua.applets.api;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.panzhihua.common.controller.BaseController;
import com.panzhihua.common.model.dtos.community.*;
import com.panzhihua.common.model.dtos.community.EldersAuthAddByFamilyDTO;
import com.panzhihua.common.model.dtos.community.EldersAuthTypeQueryDTO;
import com.panzhihua.common.model.dtos.community.PageComEldersRecordsDTO;
import com.panzhihua.common.model.dtos.community.PageEldersAuthDTO;
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.IPageVO;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.R;
import com.panzhihua.common.model.vos.community.*;
import com.panzhihua.common.model.vos.community.ComEldersAuthElderlyDetailsVO;
import com.panzhihua.common.model.vos.community.EldersAuthDetailsVO;
import com.panzhihua.common.model.vos.community.EldersAuthVO;
import com.panzhihua.common.model.vos.elders.ComElderAuthUserAppVO;
import com.panzhihua.common.model.vos.elders.ComElderAuthUserDetailVO;
import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO;
import com.panzhihua.common.service.community.CommunityService;
import com.panzhihua.common.service.user.UserService;
import com.panzhihua.common.utlis.ClazzUtils;
import com.panzhihua.common.utlis.StringUtils;
import com.panzhihua.common.utlis.TencentUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import com.panzhihua.common.model.vos.IPageVO;
import javax.annotation.Resource;
/**
 *
 * @author cedoo email:cedoo(a)qq.com
 * @version 1.0
 * @since 1.0
 * */
 */
@Slf4j
@RestController
@RequestMapping("/eldersauth")
@@ -46,12 +52,14 @@
    /**
     * 分页查找
     * @param pageEldersAuthDTO 查找高龄认证传递对象
     *
     * @param pageEldersAuthDTO
     *            查找高龄认证传递对象
     * @return 查找结果
     */
    @PostMapping("/page")
    @ApiOperation(value = "查询高龄认证@已过期", response = EldersAuthVO.class)
    R query(@Validated @RequestBody PageEldersAuthDTO pageEldersAuthDTO){
    R query(@Validated @RequestBody PageEldersAuthDTO pageEldersAuthDTO) {
        ClazzUtils.setIfStringIsEmpty(pageEldersAuthDTO);
        pageEldersAuthDTO.setSumitUserId(this.getUserId());
        return eldersAuthService.query(pageEldersAuthDTO);
@@ -59,31 +67,33 @@
    /**
     * 查询高龄认证详细信息
     * @param id 高龄认证 id
     *
     * @param id
     *            高龄认证 id
     * @return 查找结果
     */
    @GetMapping("/{id}")
    @ApiOperation(value = "查询高龄认证详细信息@已过期", response = EldersAuthDetailsVO.class)
    R<EldersAuthDetailsVO> details(@PathVariable("id") Long id){
    R<EldersAuthDetailsVO> details(@PathVariable("id") Long id) {
        return eldersAuthService.eldersAuthDetails(id);
    }
    @GetMapping("/family")
    @ApiOperation(value = "我的家庭成员@已过期", response = R.class)
    R<IPageVO<ComMngFamilyInfoVO>> family(){
    R<IPageVO<ComMngFamilyInfoVO>> family() {
        return eldersAuthService.getMyfamilyElders(getUserId());
    }
    /**
     * 新增高龄认证
     * @param eldersAuthAddByFamilyDTO 添加高龄认证传递对象
     *
     * @param eldersAuthAddByFamilyDTO
     *            添加高龄认证传递对象
     * @return 新增结果
     */
    @PostMapping("/addByFamily")
    @ApiOperation(value = "新增高龄认证", response = R.class)
    R addByFamily(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO){
    R addByFamily(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO) {
        eldersAuthAddByFamilyDTO.setSumitUserId(getUserId());
        eldersAuthAddByFamilyDTO.setUserId(getUserId());
        return eldersAuthService.addByFamilyUser(eldersAuthAddByFamilyDTO);
@@ -91,53 +101,53 @@
    @GetMapping("/authtype")
    @ApiOperation(value = "查询社区认证方式", response = R.class)
    R communityAuthtype(){
    R communityAuthtype() {
        Long communityId = this.getCommunityId();
        EldersAuthTypeQueryDTO eldersAuthTypeQueryDTO = new EldersAuthTypeQueryDTO();
        eldersAuthTypeQueryDTO.setCommunityId(communityId);
        return eldersAuthService.communityElderAuthType(eldersAuthTypeQueryDTO);
    }
    @PostMapping("/getEidToken")
    @ApiOperation(value = "高龄认证获取EidToken接口")
    public R getEidToken(@RequestParam("authUserId") Long authUserId){
        if(authUserId == null){
    public R getEidToken(@RequestParam("authUserId") Long authUserId) {
        if (authUserId == null) {
            return R.fail("参数错误");
        }
        R isOk = eldersAuthService.getEldersAuthUserByApp(authUserId);
        if(R.isOk(isOk)){
            ComElderAuthUserDetailVO authUserDetailVO = JSONObject.parseObject(JSONObject.toJSONString(isOk.getData()), ComElderAuthUserDetailVO.class);
            //获取EidToken接口
            String result = TencentUtils.getEidToken(authUserDetailVO.getName(),authUserDetailVO.getIdCard());
        if (R.isOk(isOk)) {
            ComElderAuthUserDetailVO authUserDetailVO =
                JSONObject.parseObject(JSONObject.toJSONString(isOk.getData()), ComElderAuthUserDetailVO.class);
            // 获取EidToken接口
            String result = TencentUtils.getEidToken(authUserDetailVO.getName(), authUserDetailVO.getIdCard());
            return R.ok(result);
        }else{
        } else {
            log.error("查询老人信息失败,错误信息:" + isOk.getMsg());
            return R.fail("查询老人信息失败");
            return isOk;
        }
    }
    @PostMapping("/getEidResult")
    @ApiOperation(value = "高龄认证获取核验结果接口")
    public R getEidResult(@Validated @RequestBody ComEldersAuthGetResultDTO authGetResultDTO){
    public R getEidResult(@Validated @RequestBody ComEldersAuthGetResultDTO authGetResultDTO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        if(loginUserInfo == null){
        if (loginUserInfo == null) {
            return R.fail("请先登录");
        }
        authGetResultDTO.setUserId(loginUserInfo.getUserId());
        String result = TencentUtils.getEidResult(authGetResultDTO.getEidToken());
        JSONObject object = JSON.parseObject(result);
        if(object == null){
        if (object == null) {
            return R.fail("核验失败");
        }
        JSONObject textObject = object.getJSONObject("Text");
        String code = textObject.getString("ErrCode");
        if(!code.equals("0")){
        if (!code.equals("0")) {
            log.error("人脸核验失败,错误原因:" + textObject.toJSONString());
            return R.fail("核验失败");
        }
@@ -147,10 +157,10 @@
    }
    @PostMapping("/page/old")
    @ApiOperation(value = "高龄认证分页接口",response = ComElderAuthUserAppVO.class)
    public R pageElders(@RequestBody ComEldersAuthPageDTO authPageDTO){
    @ApiOperation(value = "高龄认证分页接口", response = ComElderAuthUserAppVO.class)
    public R pageElders(@RequestBody ComEldersAuthPageDTO authPageDTO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        if(loginUserInfo == null){
        if (loginUserInfo == null) {
            return R.fail("请先登录");
        }
        authPageDTO.setUserId(loginUserInfo.getUserId());
@@ -160,9 +170,9 @@
    @PostMapping("/add")
    @ApiOperation(value = "高龄认证添加老人接口")
    public R addElders(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO){
    public R addElders(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        if(loginUserInfo == null){
        if (loginUserInfo == null) {
            return R.fail("请先登录");
        }
        authUserAddAppDTO.setUserId(loginUserInfo.getUserId());
@@ -172,9 +182,9 @@
    @PostMapping("/edit")
    @ApiOperation(value = "高龄认证修改老人接口")
    public R editElders(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO){
    public R editElders(@RequestBody ComEldersAuthUserAddAppDTO authUserAddAppDTO) {
        LoginUserInfoVO loginUserInfo = this.getLoginUserInfo();
        if(loginUserInfo == null){
        if (loginUserInfo == null) {
            return R.fail("请先登录");
        }
        authUserAddAppDTO.setUserId(loginUserInfo.getUserId());
@@ -184,12 +194,14 @@
    /**
     * 分页查找
     * @param pageComEldersRecordsDTO 查找高龄认证记录
     *
     * @param pageComEldersRecordsDTO
     *            查找高龄认证记录
     * @return 查找结果
     */
    @PostMapping("/records")
    @ApiOperation(value = "生存认证记录", response = EldersAuthVO.class)
    R query(@Validated @RequestBody PageComEldersRecordsDTO pageComEldersRecordsDTO){
    R query(@Validated @RequestBody PageComEldersRecordsDTO pageComEldersRecordsDTO) {
        ClazzUtils.setIfStringIsEmpty(pageComEldersRecordsDTO);
        LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo();
        pageComEldersRecordsDTO.setOperUserId(loginUserInfoVO.getUserId());
@@ -199,20 +211,22 @@
    /**
     * 查询高龄老人库详细信息
     * @param id 高龄老人库 id
     *
     * @param id
     *            高龄老人库 id
     * @return 查找结果
     */
    @GetMapping("/records/{id}")
    @ApiOperation(value = "认证详情详细信息")
    R<ComEldersAuthElderlyDetailsVO> detail(@PathVariable("id") Long id){
    R<ComEldersAuthElderlyDetailsVO> detail(@PathVariable("id") Long id) {
        return eldersAuthService.comEldersAuthElderlyDetails(id);
    }
    @GetMapping("/no/tips")
    @ApiOperation(value = "高龄认证不再显示提示")
    public R noTips(){
    public R noTips() {
        LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo();
        if(loginUserInfoVO == null){
        if (loginUserInfoVO == null) {
            return R.fail("请先登录");
        }
        return userService.noTips(loginUserInfoVO.getUserId());