From 1a054c486c9037b7cb0bca5c4472c628d1d1c36c Mon Sep 17 00:00:00 2001
From: huanghongfa <huanghongfa123456>
Date: 星期一, 28 六月 2021 16:54:06 +0800
Subject: [PATCH] 解决代码被合并后删除问题

---
 springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java |  178 +++++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 142 insertions(+), 36 deletions(-)

diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
index 2bfd474..be11475 100644
--- a/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
+++ b/springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java
@@ -1,6 +1,9 @@
 package com.panzhihua.service_community.api;
 
+import cn.hutool.core.util.IdcardUtil;
 import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -13,10 +16,11 @@
 import com.panzhihua.common.model.vos.community.questnaire.QuestnaireVO;
 import com.panzhihua.common.model.vos.community.questnaire.UsersAnswerQuestnaireVO;
 import com.panzhihua.common.model.vos.user.ComMngFamilyInfoVO;
+import com.panzhihua.common.model.vos.user.SysUserNoticeVO;
 import com.panzhihua.common.model.vos.user.UserPhoneVO;
-import com.panzhihua.common.utlis.ClazzUtils;
-import com.panzhihua.common.utlis.IdCard;
-import com.panzhihua.common.utlis.IdCardUtil;
+import com.panzhihua.common.service.user.UserService;
+import com.panzhihua.common.utlis.*;
+import com.panzhihua.service_community.dao.ComEldersAuthHistoryRecordMapper;
 import com.panzhihua.service_community.dao.ComMngPopulationDAO;
 import com.panzhihua.service_community.model.dos.*;
 import com.panzhihua.service_community.service.*;
@@ -29,6 +33,7 @@
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Comparator;
 import java.util.Date;
@@ -71,11 +76,18 @@
     private ComActMessageService comActMessageService;
     @Resource
     private ComActQuestnaireService comActQuestnaireService;
-
+    @Resource
+    private UserService userService;
     @Resource
     private EldersAuthService eldersAuthService;
     @Resource
     public ComMngPopulationDAO comMngPopulationDAO;
+    @Resource
+    public ComEldersAuthUserService comEldersAuthUserService;
+    @Resource
+    private ComEldersAuthHistoryRecordMapper comEldersAuthHistoryRecordMapper;
+    @Resource
+    private ComActEasyPhotoActivityService comActEasyPhotoActivityService;
 
     /**
      * 新增社区活动
@@ -459,6 +471,26 @@
     }
 
     /**
+     * 随手拍删除
+     *
+     * @param id     随手拍主键
+     * @param userId 登录用户
+     * @return 详情内容
+     */
+    @PostMapping("deleteEasyPhoto")
+    public R deleteEasyPhoto(@RequestParam("id") Long id, @RequestParam("userId") Long userId) {
+        ComActEasyPhotoDO comActEasyPhotoDO = comActEasyPhotoService.getBaseMapper().selectById(id);
+        if(comActEasyPhotoDO==null){
+            return R.fail("随手拍不存在");
+        }
+        comActEasyPhotoDO.setDelTag(1);
+        int updateById = comActEasyPhotoService.getBaseMapper().updateById(comActEasyPhotoDO);
+        if(updateById==1){
+            return R.ok();
+        }
+        return R.fail();
+    }
+    /**
      * 分页查询微心愿
      *
      * @param comActMicroWishVO 查询参数
@@ -523,6 +555,15 @@
     @PostMapping("addeasyphoto")
     public R addEasyPhoto(@RequestBody ComActEasyPhotoVO comActEasyPhotoVO) {
         return comActEasyPhotoService.addEasyPhoto(comActEasyPhotoVO);
+    }
+
+    /**
+     * 查询随手拍是否有活动
+     * @return  活动详情
+     */
+    @PostMapping("getEasyPhotoActivity")
+    public R getEasyPhotoActivity(@RequestParam("communityId") Long communityId) {
+        return comActEasyPhotoActivityService.getEasyPhotoActivity(communityId);
     }
 
     /**
@@ -1535,10 +1576,12 @@
     @PostMapping("/eldersauth/getMyfamilyElders/{userId}")
     R<List<ComMngFamilyInfoVO>> getMyfamilyElders(@PathVariable("userId") Long userId){
         List<ComMngFamilyInfoVO> list = comMngPopulationDAO.listFamilyByUserId(userId);
+ 
         List<ComMngFamilyInfoVO> listRt = new ArrayList<>();
         list.forEach(rt -> {
-            boolean isElders =  rt.getAge()>=80;
-            if(isElders){
+            int age = IdCard.IdNOToAge(rt.getIdCard());
+            boolean isElders = age >= 80;
+            if (isElders) {
                 listRt.add(rt);
             }
         });
@@ -1546,42 +1589,71 @@
     }
 
     @PostMapping("/eldersauth/addByFamilyUser")
+    @Transactional(rollbackFor = Exception.class)
     R addByFamilyUser(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO){
 
-        List<ComMngFamilyInfoVO> list = comMngPopulationDAO.listFamilyByUserId(eldersAuthAddByFamilyDTO.getUserId());
-        ComMngFamilyInfoVO theFamily = null;
-        Long familyUserId = eldersAuthAddByFamilyDTO.getFamilyUserId();
-        for (ComMngFamilyInfoVO family : list) {
-            if (familyUserId == family.getId()) {
-                theFamily = family;
-            }
+        ComEldersAuthUserDO authUserDO = comEldersAuthUserService.getById(eldersAuthAddByFamilyDTO.getFamilyUserId());
+        if(authUserDO == null){
+            return R.fail("未查询到老人信息");
         }
 
-        if(theFamily==null){
-            return R.fail("家庭成员信息错误");
+        Long elderId = authUserDO.getId();
+        boolean canReAuthThisMonth = comEldersAuthUserService.checkReAuthAgain(elderId);
+        if(!canReAuthThisMonth){
+            return R.fail("当月已认证,不能再次进行认证");
         }
-        if(theFamily.getAge()>=80){
-            Long loginUserId = eldersAuthAddByFamilyDTO.getUserId();
-            EldersAuthDO eldersAuthDO = new EldersAuthDO();
-            eldersAuthDO.setSumitUserId(eldersAuthAddByFamilyDTO.getSumitUserId());
-            eldersAuthDO.setCreateBy(loginUserId);
-            eldersAuthDO.setCreateAt(new Date());
-            eldersAuthDO.setIdCard(theFamily.getIdCard());
-            eldersAuthDO.setAuthUserName(theFamily.getName());
-            eldersAuthDO.setVideoUrl(eldersAuthAddByFamilyDTO.getVideoUrl());
-            eldersAuthDO.setFamilyUserId(eldersAuthAddByFamilyDTO.getFamilyUserId());
-            //根据身份证查询出籍贯 出生日期
-            String domicile = IdCard.domicile(eldersAuthDO.getIdCard());
-            Date birthDay = IdCard.birthDay(eldersAuthDO.getIdCard());
-            eldersAuthDO.setDomicile(domicile);
-            eldersAuthDO.setBirthDay(birthDay);
-            int add = eldersAuthService.getBaseMapper().insert(eldersAuthDO);
-            if(add==1){
-                return R.ok(eldersAuthDO.getId());
+
+        String idCard = authUserDO.getIdCard();
+
+        Long loginUserId = eldersAuthAddByFamilyDTO.getUserId();
+        EldersAuthDO eldersAuthDO = new EldersAuthDO();
+        eldersAuthDO.setSumitUserId(loginUserId);
+        eldersAuthDO.setCreateBy(loginUserId);
+        eldersAuthDO.setCreateAt(new Date());
+        eldersAuthDO.setIdCard(idCard);
+        eldersAuthDO.setAuthUserName(authUserDO.getName());
+        eldersAuthDO.setVideoUrl(eldersAuthAddByFamilyDTO.getVideoUrl());
+        eldersAuthDO.setFamilyUserId(authUserDO.getId());
+        eldersAuthDO.setAge(IdcardUtil.getAgeByIdCard(idCard));
+        //根据身份证查询出籍贯 出生日期
+        //String domicile = IdCard.domicile(eldersAuthDO.getIdCard());
+        String domicile = eldersAuthService.queryDomicile(eldersAuthDO.getIdCard());
+        if(StringUtils.isEmpty(domicile)){
+            domicile = "暂无";
+        }
+
+        Date birthDay = IdCard.birthDay(idCard);
+        eldersAuthDO.setDomicile(domicile);
+        eldersAuthDO.setBirthDay(birthDay);
+        int add = eldersAuthService.getBaseMapper().insert(eldersAuthDO);
+        if(add==1){
+            //设置认证成功
+            Long familyUserId = eldersAuthDO.getFamilyUserId();
+            ComEldersAuthUserDO comEldersAuthUserDO = new ComEldersAuthUserDO();
+            comEldersAuthUserDO.setId(familyUserId);
+            comEldersAuthUserDO.setIsAuth(1);
+            boolean updated = comEldersAuthUserService.updateById(comEldersAuthUserDO);
+            if(!updated){
+                throw  new ServiceException("添加认证失败,更新认证状态");
             }
-        }else{
-            return R.fail("家庭成员年龄还未达到80");
+            //认证成功  添加认证记录
+            List<ComEldersAuthHistoryRecordDO> authHistoryRecordDOList = comEldersAuthHistoryRecordMapper.selectList(new QueryWrapper<ComEldersAuthHistoryRecordDO>()
+                    .lambda().eq(ComEldersAuthHistoryRecordDO::getIdCard,idCard).ge(ComEldersAuthHistoryRecordDO::getCreateAt, DateUtils.getFirstDayOfMonth()));
+            if(authHistoryRecordDOList.isEmpty()){
+                ComEldersAuthHistoryRecordDO authHistoryRecordDO = new ComEldersAuthHistoryRecordDO();
+                authHistoryRecordDO.setUserId(eldersAuthAddByFamilyDTO.getFamilyUserId());
+                authHistoryRecordDO.setAuthId(eldersAuthDO.getId());
+                BeanUtils.copyProperties(eldersAuthDO,authHistoryRecordDO);
+                authHistoryRecordDO.setId(null);
+                authHistoryRecordDO.setBrithday(AgeUtils.getAgeFormatBirthday(IdcardUtil.getBirthByIdCard(idCard)));
+                authHistoryRecordDO.setAge(IdcardUtil.getAgeByIdCard(idCard));
+                authHistoryRecordDO.setIsAuth(1);
+                authHistoryRecordDO.setDomicile(domicile);
+                comEldersAuthHistoryRecordMapper.insert(authHistoryRecordDO);
+            }
+            return R.ok(eldersAuthDO.getId());
         }
+
         return R.fail();
     }
 
@@ -1593,7 +1665,30 @@
     @PostMapping("/eldersauth/addFeedback")
     R add(@RequestBody EldersAuthFeedbackAddDTO eldersAuthFeedbackAddDTO){
         ClazzUtils.setIfStringIsEmpty(eldersAuthFeedbackAddDTO);
-        return eldersAuthService.addFeedback(eldersAuthFeedbackAddDTO);
+        EldersAuthDO eldersAuthDO = eldersAuthService.getBaseMapper().selectById(eldersAuthFeedbackAddDTO.getAuthId());
+        if(eldersAuthDO==null){
+            return R.fail("认证记录不存在");
+        }
+        R addR = eldersAuthService.addFeedback(eldersAuthFeedbackAddDTO);
+        if(R.isOk(addR)){
+            SysUserNoticeVO sysUserNoticeVO=new SysUserNoticeVO();
+            sysUserNoticeVO.setUserId(eldersAuthDO.getSumitUserId());
+            sysUserNoticeVO.setType(3);
+            sysUserNoticeVO.setTitle("高龄认证社区反馈");
+            sysUserNoticeVO.setBusinessType(13);
+            sysUserNoticeVO.setBusinessTitle(" ");
+            sysUserNoticeVO.setBusinessContent("你提交【" +eldersAuthDO.getAuthUserName() + "】的高龄认证,社区反馈:"
+                    + eldersAuthFeedbackAddDTO.getFeedBack());
+            sysUserNoticeVO.setBusinessId(eldersAuthDO.getId());
+            sysUserNoticeVO.setStatus(0);
+            sysUserNoticeVO.setBusinessStatus(2);
+            R r1 = userService.addNotice(sysUserNoticeVO);
+            if (R.isOk(r1)) {
+                log.info("新增用户报名党建活动通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO));
+            }
+        }
+
+        return addR;
     }
 
 
@@ -1606,4 +1701,15 @@
     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);
+    }
 }

--
Gitblit v1.7.1