From cc1098fc00a50cb1591d182f04bc37066ff0a9e2 Mon Sep 17 00:00:00 2001 From: 罗元桥 <2376770955@qq.com> Date: 星期四, 05 八月 2021 15:12:39 +0800 Subject: [PATCH] Merge branch 'test' into 'master' --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java | 285 ++++++++++++++++++++++++++++++++++++++++++++++----------- 1 files changed, 230 insertions(+), 55 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 d5d3e5e..7db9951 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,5 +1,6 @@ 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; @@ -18,9 +19,9 @@ import com.panzhihua.common.model.vos.user.SysUserNoticeVO; import com.panzhihua.common.model.vos.user.UserPhoneVO; import com.panzhihua.common.service.user.UserService; -import com.panzhihua.common.utlis.ClazzUtils; -import com.panzhihua.common.utlis.IdCard; -import com.panzhihua.common.utlis.IdCardUtil; +import com.panzhihua.common.utlis.*; +import com.panzhihua.service_community.dao.ComActActSignDAO; +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.*; @@ -34,10 +35,7 @@ import javax.annotation.Resource; import java.text.SimpleDateFormat; -import java.util.ArrayList; -import java.util.Comparator; -import java.util.Date; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; /** @@ -82,6 +80,14 @@ private EldersAuthService eldersAuthService; @Resource public ComMngPopulationDAO comMngPopulationDAO; + @Resource + private ComActActSignDAO comActActSignDAO; + @Resource + public ComEldersAuthUserService comEldersAuthUserService; + @Resource + private ComEldersAuthHistoryRecordMapper comEldersAuthHistoryRecordMapper; + @Resource + private ComActEasyPhotoActivityService comActEasyPhotoActivityService; /** * 新增社区活动 @@ -252,7 +258,7 @@ * @return 详情 */ @PostMapping("detailactivity") - public R detailActivity(@RequestParam("id") Long id, @RequestParam("userId") Long userId) { + public R detailActivity(@RequestParam("id") Long id, @RequestParam(value = "userId",required = false) Long userId) { ComActActivityVO comActActivityVO = comActActivityService.inforActivity(id, userId); if (ObjectUtils.isEmpty(comActActivityVO)) { return R.fail("活动不存在"); @@ -269,7 +275,7 @@ } ActivitySignVO activitySignVO = new ActivitySignVO(); activitySignVO.setActivityId(id); - R r = comActActivityService.listActivitySign(activitySignVO); + R r = comActActivityService.listActivitySigns(activitySignVO); if (R.isOk(r)) { List<ActivitySignVO> activitySignVOS = JSONArray.parseArray(JSONArray.toJSONString( r.getData()),ActivitySignVO.class); if (!ObjectUtils.isEmpty(activitySignVOS)) { @@ -304,7 +310,7 @@ } /** - * 活动报名名单 + * 分页活动报名名单 * * @param activitySignVO 查询参数 * @return 报名人员集合 @@ -312,6 +318,17 @@ @PostMapping("listactivitysign") public R listActivitySign(@RequestBody ActivitySignVO activitySignVO) { return comActActivityService.listActivitySign(activitySignVO); + } + + /** + * 活动报名名单 + * + * @param activitySignVO 查询参数 + * @return 报名人员集合 + */ + @PostMapping("listactivitysigns") + public R listActivitySigns(@RequestBody ActivitySignVO activitySignVO) { + return comActActivityService.listActivitySigns(activitySignVO); } /** @@ -357,18 +374,25 @@ */ @PostMapping("putdynamic") public R putDynamic(@RequestBody ComActDynVO comActDynVO) { - ComActDynDO comActDynDO = new ComActDynDO(); - Long id = comActDynVO.getId(); - BeanUtils.copyProperties(comActDynVO, comActDynDO); + ComActDynDO comActDynDO = comActDynService.getById(comActDynVO.getId()); + if(comActDynDO == null){ + return R.fail("未查到社区动态记录"); + } +// Long id = comActDynVO.getId(); Integer isTopping = comActDynVO.getIsTopping(); - boolean b = isTopping.intValue() == 1; + boolean b = isTopping.equals(1); if(b){ - ComActDynDO comActDynDO1 = comActDynService.getById(id); - Integer status = comActDynDO1.getStatus(); - if (status.intValue()==0) { - return R.fail("该动态还未发布"); + Integer status = comActDynDO.getStatus(); + if (status.equals(0)) { + return R.fail("待发布的社区动态不可置顶"); } } + +// if(StringUtils.isEmpty(comActDynVO.getCover())){ +// comActDynVO.setCover(comActDynDO.getCover()); +// } + BeanUtils.copyProperties(comActDynVO, comActDynDO); + boolean update = comActDynService.updateById(comActDynDO); if (update) { // 最多只能设置三条置顶状态,后边设置会取消先前设置的置顶 @@ -465,6 +489,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 查询参数 @@ -529,6 +573,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); } /** @@ -1541,10 +1594,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); } }); @@ -1552,45 +1607,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("当月已认证,不能再次进行认证"); } - Integer age = IdCard.IdNOToAge(theFamily.getIdCard()); - if(age>=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()); - String domicile = eldersAuthService.queryDomicile(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()); - } - }else{ - return R.fail("家庭成员年龄还未达到80"); + 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("添加认证失败,更新认证状态"); + } + //认证成功 添加认证记录 + 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(); } @@ -1611,10 +1692,11 @@ SysUserNoticeVO sysUserNoticeVO=new SysUserNoticeVO(); sysUserNoticeVO.setUserId(eldersAuthDO.getSumitUserId()); sysUserNoticeVO.setType(3); - sysUserNoticeVO.setTitle("高龄认证社区社区反馈"); + sysUserNoticeVO.setTitle("高龄认证社区反馈"); sysUserNoticeVO.setBusinessType(13); sysUserNoticeVO.setBusinessTitle(" "); - sysUserNoticeVO.setBusinessContent("你提交【" +eldersAuthDO.getAuthUserName() + "】的高龄认证,社区进行了反馈"); + sysUserNoticeVO.setBusinessContent("你提交【" +eldersAuthDO.getAuthUserName() + "】的高龄认证,社区反馈:" + + eldersAuthFeedbackAddDTO.getFeedBack()); sysUserNoticeVO.setBusinessId(eldersAuthDO.getId()); sysUserNoticeVO.setStatus(0); sysUserNoticeVO.setBusinessStatus(2); @@ -1622,8 +1704,21 @@ if (R.isOk(r1)) { log.info("新增用户报名党建活动通知成功【{}】", JSONObject.toJSONString(sysUserNoticeVO)); } - } + //用户高龄认证反馈,推送订阅消息给用户 + Map<String,String> map = comActActSignDAO.getUserOpenId(eldersAuthDO.getSumitUserId()); + if(map != null){ + String openid = map.get("openid"); + try { + WxXCXTempSend util = new WxXCXTempSend(); + String accessToken = util.getAppAccessToken(); + WxUtil.sendSubscribeRZSH(openid,accessToken,"高龄认证" + ,DateUtils.format(eldersAuthDO.getCreateAt(),DateUtils.ymdhms_format),eldersAuthFeedbackAddDTO.getFeedBack()); + }catch (Exception e){ + log.error("推送审核状态订阅消息失败,失败原因:" + e.getMessage()); + } + } + } return addR; } @@ -1637,4 +1732,84 @@ 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); + } + + /** + * 随手拍活动定时任务 + * @return 执行结果 + */ + @PostMapping("timeTaskEasyPhotoActivity") + public R timeTaskEasyPhotoActivity(){ + return comActEasyPhotoActivityService.timeTaskEasyPhotoActivity(); + } + + /** + * 社区随手拍列表统计 + * @param communityId 社区id + * @return 统计结果 + */ + @GetMapping("easyphoto/statistics") + public R easyPhotoStatistics(@RequestParam("communityId")Long communityId) { + return comActEasyPhotoService.easyPhotoStatistics(communityId); + } + + /** + * 综治后台-查询社区列表 + * @return 社区列表 + */ + @GetMapping("/eventgrid/community/list") + public R getCommunityLists(){ + return comActService.getCommunityLists(); + } + + /** + * 随手拍发放奖励 + * @param grantRewardDTO 请求参数 + * @return 发放结果 + */ + @PostMapping("/easyphoto/grantReward") + public R grantReward(@RequestBody GrantRewardDTO grantRewardDTO) { + return comActEasyPhotoService.grantReward(grantRewardDTO); + } + + /** + * 获取最新活动和用户最新收益 + * @param userId 用户id + * @param communityId 社区id + * @return 最新活动和用户最新收益 + */ + @PostMapping("easyphoto/getUserReward") + public R getUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId) { + return comActEasyPhotoService.getUserReward(userId,communityId); + } + + /** + * 读取用户随手拍奖励 + * @param userId 用户id + * @return 读取结果 + */ + @PostMapping("easyphoto/readUserReward") + public R readUserReward(@RequestParam("userId") Long userId,@RequestParam("communityId") Long communityId) { + return comActEasyPhotoService.readUserReward(userId,communityId); + } + + /** + * 定时任务检测即将开始的社区活动,并使用订阅消息通知用户 + */ + @PostMapping("timedTaskActivityNotice") + public R timedTaskActivityNotice(){ + return comActActivityService.timedTaskActivityNotice(); + } + + } -- Gitblit v1.7.1