From 02f18587bd8860b305e2c688e20465be166bb48c Mon Sep 17 00:00:00 2001 From: huanghongfa <huanghongfa123456> Date: 星期四, 22 七月 2021 15:14:03 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/test' into test --- springcloud_k8s_panzhihuazhihuishequ/service_community/src/main/java/com/panzhihua/service_community/api/CommunityApi.java | 852 +++++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 829 insertions(+), 23 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 7140b5c..eeaeb70 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,29 +1,42 @@ 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; import com.panzhihua.common.exceptions.ServiceException; -import com.panzhihua.common.model.dtos.advertisement.ComOpsAdvDTO; -import com.panzhihua.common.model.dtos.community.PageComActDTO; -import com.panzhihua.common.model.dtos.user.PageFeedBackDTO; +import com.panzhihua.common.model.dtos.community.*; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.SystemmanagementConfigVO; import com.panzhihua.common.model.vos.community.*; +import com.panzhihua.common.model.vos.community.questnaire.EditComActQuestnaireVo; +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.service_community.model.dos.ComActActPrizeDO; -import com.panzhihua.service_community.model.dos.ComActDynDO; -import com.panzhihua.service_community.model.dos.ComActMicroWishDO; -import com.panzhihua.service_community.model.dos.ComMngStructAreaDO; +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.*; + import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; +import org.springframework.util.StringUtils; 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; import java.util.List; import java.util.stream.Collectors; @@ -57,6 +70,24 @@ private ComMngStructOtherBuildService comMngStructOtherBuildService; @Resource private ComMngVolunteerMngService comMngVolunteerMngService; + @Resource + private ComMngStructAreaDistrictService comMngStructAreaDistrictService; + @Resource + 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; /** * 新增社区活动 @@ -109,8 +140,8 @@ boolean ok = R.isOk(r); if (ok) { Integer hasPrize = comActActivityVO.getHasPrize(); + Long actActivityVOId = comActActivityVO.getId(); if (!ObjectUtils.isEmpty(comActActPrizeVOList) && hasPrize.intValue() == 1) { - Long actActivityVOId = comActActivityVO.getId(); comActActPrizeService.remove(new QueryWrapper<ComActActPrizeDO>().lambda().eq(ComActActPrizeDO::getActivityId, actActivityVOId)); if (!ObjectUtils.isEmpty(comActActPrizeVOList)) { List<ComActActPrizeDO> comActActPrizeDOS = new ArrayList<>(); @@ -125,6 +156,9 @@ return R.fail("保存奖品失败"); } } + }else if(hasPrize.intValue() == 0){ + boolean remove = comActActPrizeService.remove(new QueryWrapper<ComActActPrizeDO>().lambda().eq(ComActActPrizeDO::getActivityId, actActivityVOId)); + log.info("删除社区活动奖品结果【{}】,社区活动id【{}】",remove,actActivityVOId); } } return r; @@ -171,12 +205,28 @@ }); } comActActivityVO1.setComActActPrizeVOList(comActActPrizeVOList); + Integer participantMax = comActActivityVO1.getParticipantMax(); + if (participantMax.intValue()==0) { + comActActivityVO1.setType(1); + }else{ + comActActivityVO1.setType(2); + } }); page.setRecords(content); } } return r; + } + + /** + * 社区后台分页查询社区活动 + * @param comActActivityVO 查询参数 + * @return 返回结果 + */ + @PostMapping("pageactivitycommunityback") + public R pageActivityCommunityBack(@RequestBody ComActActivityVO comActActivityVO){ + return comActActivityService.pageActivityCommunityBack(comActActivityVO); } /** @@ -225,17 +275,49 @@ } ActivitySignVO activitySignVO = new ActivitySignVO(); activitySignVO.setActivityId(id); - R r = comActActivityService.listActivitySign(activitySignVO); + R r = comActActivityService.listActivitySigns(activitySignVO); if (R.isOk(r)) { - List<ActivitySignVO> activitySignVOS = (List<ActivitySignVO>) r.getData(); - int size = activitySignVOS.size(); - if (size>=6) { - comActActivityVO.setActivitySignVOList(activitySignVOS.subList(0,6)); - } else { - comActActivityVO.setActivitySignVOList(activitySignVOS); + List<ActivitySignVO> activitySignVOS = JSONArray.parseArray(JSONArray.toJSONString( r.getData()),ActivitySignVO.class); + if (!ObjectUtils.isEmpty(activitySignVOS)) { + for (ActivitySignVO signVO:activitySignVOS) { + if(StringUtils.isEmpty(signVO.getName())){ + signVO.setName(signVO.getNickName()); + } + } + List<ActivitySignVO> collect = activitySignVOS.stream().filter(activitySignVO1 -> activitySignVO1.getIsVolunteer() == 1).collect(Collectors.toList()); + if (!ObjectUtils.isEmpty(collect)) { + int size = collect.size(); + if (size>=6) { + comActActivityVO.setActivityVolunteerList(collect.subList(0,6)); + } else { + comActActivityVO.setActivityVolunteerList(collect); + } + } + List<ActivitySignVO> collect1 = activitySignVOS.stream().filter(activitySignVO1 -> activitySignVO1.getIsVolunteer() == 0).collect(Collectors.toList()); + if (!ObjectUtils.isEmpty(collect1)) { + int size = collect1.size(); + if (size>=6) { + comActActivityVO.setActivitySignVOList(collect1.subList(0,6)); + } else { + comActActivityVO.setActivitySignVOList(collect1); + } + } } + } + comActActivityVO.setIntegral(0); return R.ok(comActActivityVO); + } + + /** + * 分页活动报名名单 + * + * @param activitySignVO 查询参数 + * @return 报名人员集合 + */ + @PostMapping("listactivitysign") + public R listActivitySign(@RequestBody ActivitySignVO activitySignVO) { + return comActActivityService.listActivitySign(activitySignVO); } /** @@ -244,9 +326,9 @@ * @param activitySignVO 查询参数 * @return 报名人员集合 */ - @PostMapping("listactivitysign") - public R listActivitySign(@RequestBody ActivitySignVO activitySignVO) { - return comActActivityService.listActivitySign(activitySignVO); + @PostMapping("listactivitysigns") + public R listActivitySigns(@RequestBody ActivitySignVO activitySignVO) { + return comActActivityService.listActivitySigns(activitySignVO); } /** @@ -293,12 +375,20 @@ @PostMapping("putdynamic") public R putDynamic(@RequestBody ComActDynVO comActDynVO) { ComActDynDO comActDynDO = new ComActDynDO(); + Long id = comActDynVO.getId(); BeanUtils.copyProperties(comActDynVO, comActDynDO); + Integer isTopping = comActDynVO.getIsTopping(); + boolean b = isTopping.intValue() == 1; + if(b){ + ComActDynDO comActDynDO1 = comActDynService.getById(id); + Integer status = comActDynDO1.getStatus(); + if (status.intValue()==0) { + return R.fail("该动态还未发布"); + } + } boolean update = comActDynService.updateById(comActDynDO); if (update) { // 最多只能设置三条置顶状态,后边设置会取消先前设置的置顶 - Integer isTopping = comActDynVO.getIsTopping(); - boolean b = isTopping.intValue() == 1; if (b) { List<ComActDynDO> list = comActDynService.list(new QueryWrapper<ComActDynDO>().lambda().eq(ComActDynDO::getIsTopping, 1).eq(ComActDynDO::getCommunityId, comActDynVO.getCommunityId())); if (!ObjectUtils.isEmpty(list)) { @@ -346,6 +436,17 @@ } /** + * 管理后台分页查询社区动态 + * + * @param comActDynVO 查询参数 + * @return 动态集合 + */ + @PostMapping("pagedynamicByAdmin") + public R pagedynamicByAdmin(@RequestBody ComActDynVO comActDynVO) { + return comActDynService.pageDynamicByAdmin(comActDynVO); + } + + /** * 社区动态详情 * * @param id 动态id @@ -380,6 +481,26 @@ return comActEasyPhotoService.detailEasyPhoto(id, userId); } + /** + * 随手拍删除 + * + * @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(); + } /** * 分页查询微心愿 * @@ -445,6 +566,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); } /** @@ -526,7 +656,7 @@ * @param comActVO 编辑内容 * @return 编辑结果 */ - @PutMapping("putCommunity") + @PostMapping("putCommunity") public R putCommunity(@RequestBody ComActVO comActVO) { return comActService.putCommunity(comActVO); } @@ -611,7 +741,22 @@ */ @PostMapping("batchhouse") public R batchHouse(@RequestBody BatchhouseVO batchhouseVO) { - return comMngStructHouseService.batchHouse(batchhouseVO); + R r = comMngStructHouseService.batchHouse(batchhouseVO); + if (R.isOk(r)) { + String areaCode = batchhouseVO.getAreaCode(); + String ruleDoor = batchhouseVO.getRuleDoor(); + String ruleConnector = batchhouseVO.getRuleConnector(); + String ruleFloor = batchhouseVO.getRuleFloor(); + ComMngStructAreaVO comMngStructAreaVO=new ComMngStructAreaVO(); + comMngStructAreaVO.setRoleDoor(ruleDoor); + comMngStructAreaVO.setRoleFloor(ruleFloor); + comMngStructAreaVO.setRoleConnector(ruleConnector); + comMngStructAreaVO.setAreaCode(areaCode); + comMngStructAreaVO.setCommunityId(null); + comMngStructAreaVO.setIsAccumulation(null); + comMngStructAreaService.putArea(comMngStructAreaVO); + } + return r; } /** @@ -636,7 +781,19 @@ R r=comMngStructAreaService.selectAreaByAreaCode(batchhouseVO.getAreaCode()); if (R.isOk(r)) { ComMngStructAreaDO comMngStructAreaDO = (ComMngStructAreaDO)r.getData(); - return comMngStructHouseService.addHouse(batchhouseVO,comMngStructAreaDO); + try { + R r1 = comMngStructHouseService.addHouse(batchhouseVO, comMngStructAreaDO); + return r1; + } catch (Exception e) { + if (e.getMessage().contains("unique_house_name")) { + return R.fail("房屋地址重复"); + }else { + log.error("添加同级地址失败【{}】",e.getMessage()); + return R.fail("添加房屋失败"); + } + } + + } return r; } @@ -701,6 +858,16 @@ @PostMapping("addvolunteer") R addVolunteer(@RequestBody ComMngVolunteerMngVO comMngVolunteerMngVO){ return comMngVolunteerMngService.addVolunteer(comMngVolunteerMngVO); + } + + /** + * 获取志愿者详情 + * @param id + * @return + */ + @GetMapping("getVolunteerById") + R getVolunteerById(@RequestParam("id")Long id){ + return comMngVolunteerMngService.getVolunteerById(id); } /** @@ -940,9 +1107,648 @@ return comActService.listCommunityAll(); } + /** + * 社区管理后台数据看板 代办事件 + * @param communityId 社区id + * @param userId 登录用户信息 + * @return 代办事件列表 + */ + @PostMapping("indexdatacommunitybackstage") + public R indexDataCommunityBackstage(@RequestParam("communityId") Long communityId, @RequestParam("userId")Long userId){ + List<TodoEventsVO> todoEventsVOS=new ArrayList<>(); + List<TodoEventsVO> todoEventsVOS1=comActEasyPhotoService.selectNeedToDo(communityId,userId); + List<TodoEventsVO> todoEventsVOS2=comActMicroWishService.selectNeedToDo(communityId,userId); + List<TodoEventsVO> todoEventsVOS3=comMngVolunteerMngService.selectNeedToDo(communityId,userId); + + TodoEventsVO todoEventsVO=new TodoEventsVO(); + todoEventsVO.setType(1); + todoEventsVO.setNum(todoEventsVOS1.size()); + TodoEventsVO todoEventsVO1=new TodoEventsVO(); + todoEventsVO1.setType(2); + todoEventsVO1.setNum(todoEventsVOS2.size()); + TodoEventsVO todoEventsVO2=new TodoEventsVO(); + todoEventsVO2.setType(4); + todoEventsVO2.setNum(todoEventsVOS3.size()); + todoEventsVOS.add(todoEventsVO); + todoEventsVOS.add(todoEventsVO1); + todoEventsVOS.add(todoEventsVO2); + return R.ok(todoEventsVOS); + } + + /** + * 删除社区 + * @param communityId 社区id + * @return 删除结果 + */ + @PostMapping("delectcommunity") + public R delectCommunity(@RequestParam("communityId") Long communityId){ + return comActService.delectCommunity(communityId); + } + + /** + * 定时任务刷新社区动态置顶状态 + * @return 刷新结果 + */ + @PostMapping("timedtaskdynistopping") + public R timedTaskDynIstopping(){ + return comActDynService.timedTaskDynIstopping(); + } + /** + * 定时任务刷新社区动态发布状态 + * @return + */ + @PostMapping("timedtaskdynstatus") + public R timedTaskDynStatus(){ + return comActDynService.timedTaskDynStatus(); + } + + /** + * 定时任务查询所有要取消的社区活动 + * @return 社区活动集合 + */ + @PostMapping("timedtaskactactivity") + public R timedTaskActActivity(){ + return comActActivityService.timedTaskActActivity(); + } + + /** + * 定时任务刷新社区活动的各个状态 除取消外 + * @return 更新结果 + */ + @PostMapping("timedtaskactactivityall") + R timedTaskActActivityAll(){ + return comActActivityService.timedTaskActActivityAll(); + } + + /** + * 定时任务刷新微心愿的状态 + * @return 更新结果 + */ + @PostMapping("timedtaskactmicrowish") + R timedTaskActMicroWishAll(){ + return comActMicroWishService.timedTaskActMicroWishAll(); + } + + /** + * 其他建筑详情 + * @param id 主键id + * @return 建筑内容 + */ + @PostMapping("detailotherbuild") + public R detailOtherbuild(@RequestParam("id")Long id){ + return comMngStructOtherBuildService.detailOtherbuild(id); + } + + /** + * 编辑其他建筑 + * @param comMngStructOtherBuildVO 编辑内容 + * @return 编辑结果 + */ + @PostMapping("putotherbuild") + public R putOtherbuild(@RequestBody ComMngStructOtherBuildVO comMngStructOtherBuildVO){ + return comMngStructOtherBuildService.putOtherbuild(comMngStructOtherBuildVO); + } + + /** + * 删除其他建筑 + * @param id 主键 + * @return 删除结果 + */ + @PostMapping("deleteotherbuild") + public R deleteOtherbuild(@RequestParam("id")Long id){ + return comMngStructOtherBuildService.deleteOtherbuild(id); + } + + /** + * 小程序分页查询随手拍 + * @param comActEasyPhotoVO 查询参数 + * @return 返回结果 + */ + @PostMapping("pageeasyphotoapplets") + public R pageEasyPhotoApplets(@RequestBody ComActEasyPhotoVO comActEasyPhotoVO){ + return comActEasyPhotoService.pageEasyPhotoApplets(comActEasyPhotoVO); + } + + /** + * 随手拍评论分页查询 + * @param pageComActEasyPhotoCommentDTO 查询参数 + * @return 查询结果 + */ + @PostMapping("pagecomacteasyphotocomment") + public R pageComActEasyPhotoComment(@RequestBody PageComActEasyPhotoCommentDTO pageComActEasyPhotoCommentDTO){ + return comActEasyPhotoService.pageComActEasyPhotoComment(pageComActEasyPhotoCommentDTO); + } + + /** + * 评论点赞/取消点赞 + * @param comActEasyPhotoCommentUserDTO 操作 + * @return 操作结果 + */ + @PostMapping("commentsign") + public R commentSign(@RequestBody ComActEasyPhotoCommentUserDTO comActEasyPhotoCommentUserDTO){ + return comActEasyPhotoService.commentSign(comActEasyPhotoCommentUserDTO); + } + + /** + * 随手拍--评论--新增评论 + * @param comActEasyPhotoCommentDTO 新增内容 + * @return 新增结果 + */ + @PostMapping("addcomacteasyphotocomment") + public R addComActEasyPhotoComment(@RequestBody ComActEasyPhotoCommentDTO comActEasyPhotoCommentDTO){ + return comActEasyPhotoService.addComActEasyPhotoComment(comActEasyPhotoCommentDTO); + } + + /** + * 查询城市下属所有地区列表 + * @param cityAdcode 城市地址编码 + * @return 地区列表 + */ + @PostMapping("listareadistrict") + public R listAreaDistrict(@RequestParam("cityAdcode") Long cityAdcode){ + return comMngStructAreaDistrictService.listAreaDistrict(cityAdcode); + } + + /** + * 首页图表数据汇总 + * @param communityId 社区id + * @return 图表数据 IndexDataVO + */ + @PostMapping("indexdatacommunitybackstageechart") + public R indexDataCommunityBackstageEchart(@RequestParam("communityId")Long communityId){ + return comActActivityService.indexDataCommunityBackstageEchart(communityId); + } + + /** + * 选择导入的小区 + * @param param 小区名字 模糊查询 + * @param communityId 社区id + * @return 小区集合 ComMngStructAreaVO + */ + @PostMapping("listareas") + public R listAreas(@RequestParam("param")String param, @RequestParam("communityId")Long communityId){ + return comMngStructAreaService.listAreas(param,communityId); + } + + /** + * 检查小区是否已经批量设置过房屋并且返回小区房屋门号规则 + * @param id 小区id + * @return ComMngStructAreaVO + */ + @PostMapping("checkAreaHouse") + public R checkAreaHouse(@RequestParam("id")Long id){ + return comMngStructAreaService.checkAreaHouse(id); + } + /** + * 新增留言 + * @param comActMessageVO 新增留言信息 + * @return 发布结果 + */ + @PostMapping("addmessage") + public R addMessage(@RequestBody ComActMessageVO comActMessageVO){ + // 微信内容审核 + return comActMessageService.addMessage(comActMessageVO); + } + /** + * 我发的留言 + * @return 结果集合 + */ + @PostMapping("pagemymessage") + public R pageMyMessage (@RequestBody ComActMessageVO comActMessageVO){ + return comActMessageService.pageMyMessageApplets(comActMessageVO); + } + /** + * 发给我的留言 + * @return 结果集合 + */ + @PostMapping("pagesendtomemessage") + public R pageSendToMessage (@RequestBody ComActMessageVO comActMessageVO){ + return comActMessageService.pageSendToMessageApplets(comActMessageVO); + } + /** + * 根据id查询留言集合 + * @return 结果集合 + */ + @PostMapping("pagemessagebyuser") + public R pageMessageByUser (@RequestBody ComActMessageVO comActMessageVO){ + return comActMessageService.pageMessageByUserApplets(comActMessageVO); + } + /** + * 社区留言 + * @return 结果集合 + */ + @PostMapping("pagemycommunitymessage") + public R pageMyCommunityMessage (@RequestBody ComActMessageVO comActMessageVO){ + return comActMessageService.pageMyCommunityMessageApplets(comActMessageVO); + } + /** + * 新增留言回复 + * @param comActMessageBackVO 新增留言回复信息 + * @return 发布结果 + */ + @PostMapping("addmessageback") + public R addMessageBack(@RequestBody ComActMessageBackVO comActMessageBackVO){ + // 微信内容审核 + return comActMessageService.addMessageBack(comActMessageBackVO); + } + @PostMapping("deletemessage") + public R deleteMessage(@RequestBody ComActMessageVO comActMessageVO) { + return comActMessageService.deleteMessage(comActMessageVO); + } + + @PostMapping("resetmessagepublic") + public R resetMessagePublic(@RequestBody ResetComActMessageVO resetComActMessageVO) { + return comActMessageService.resetMessagePublic(resetComActMessageVO); + } + + /** + * 留言详情 + * + * @param id 主键 + * @return 详情内容 + */ + @PostMapping("detailmessage") + public R detailMessage(@RequestParam("id") Long id) { + return comActMessageService.detailMessage(id); + } + + /** + * 导出房屋信息 + * @param areaId + * @return + */ + @PostMapping("house/export") + public R houseExport(@RequestParam("areaId") Long areaId) { + return comMngStructHouseService.houseExport(areaId); + } + + /** + * 查看用户问卷调查详细 + * @param userId 用户ID + * @param questId 问卷ID + * @return 用户问卷调查详细 + */ + @GetMapping("questnaire/usersanswer") + public R answerInfoQuestnaire(@RequestParam("userId") Long userId, @RequestParam("questId") Long questId) { + return comActQuestnaireService.answerInfoQuestnaire(userId, questId); + } + + /** + * 查看问卷调查详细 + * @param questId 问卷ID + * @return 用户问卷调查详细 + */ + @GetMapping("questnaire/view") + public R view(@RequestParam("userId") Long userId, @RequestParam("questId") Long questId) { + /** + * 根据用户身份分别返回 数据 + */ + /* 问卷参与者, 已提交问卷则返回问卷详细, 否则返回空的问卷 */ + boolean isMember = true;//默认情况下,可不做逻辑判断,直接查询返回用户答卷 + if(isMember) { + return comActQuestnaireService.answerInfoQuestnaire(userId, questId); + }else { + /*非问卷参与者 返回问卷“预览” */ + return comActQuestnaireService.infoQuestnaire(questId); + } + } + + + /** + * 新增社区问卷 + * @param questnaireVO + * @return + */ + @Transactional(rollbackFor = Exception.class) + @PostMapping("questnaire/addquestnaire") + public R addQuestnaire(@RequestBody QuestnaireVO questnaireVO, @RequestParam("communityId") Long communityId, @RequestParam("userId") Long userId) { + return comActQuestnaireService.addQuestnaire(questnaireVO, communityId, userId); + } + + /** + * 社区问卷列表 + * @param pageQuestnaireDTO + * @return + */ + @PostMapping("questnaire/pagequestnaire") + public R pageQuestnaire(@RequestBody PageQuestnaireDTO pageQuestnaireDTO,@RequestParam("communityId") Long communityId) { + if(pageQuestnaireDTO.getForParty()==null){ + pageQuestnaireDTO.setForParty(false); + } + if(pageQuestnaireDTO.getForVolunteer()==null){ + pageQuestnaireDTO.setForVolunteer(false); + } + return comActQuestnaireService.pageQuestnaire(pageQuestnaireDTO, communityId); + } + + /** + * 编辑问卷——问卷、题目、选项 + * @param questnaireVO + * @return + */ + @Transactional(rollbackFor = Exception.class) + @PostMapping("questnaire/editquestnaire") + public R editQuestnaire(@RequestBody QuestnaireVO questnaireVO) { + return comActQuestnaireService.editQuestnaire(questnaireVO); + } + + /** + * 修改问卷状态 + * @param editComActQuestnaireVo + * @return + */ + @PostMapping("questnaire/editquestnairedo") + public R editQuestnaireDO(@RequestBody EditComActQuestnaireVo editComActQuestnaireVo, @RequestParam("userId") Long userId) { + return comActQuestnaireService.editQuestnaireDO(editComActQuestnaireVo, userId); + } + + /** + * 删除问卷 ——隐藏 + * @param questId 调查问卷Id + * @return + */ + @Transactional(rollbackFor = Exception.class) + @PostMapping("questnaire/deletequestnaire") + public R editQuestnaireDO(@RequestParam("questId") Long questId,@RequestParam("userId") Long userId) { + return comActQuestnaireService.deleteQuestnaire(questId,userId); + } + + /** + * 查看用户问卷调查统计信息 + * @param questId 问卷ID + * @return 用户问卷调查统计信息 + */ + @GetMapping("questnaire/stat") + public R statistics(@RequestParam("questId") Long questId) { + return comActQuestnaireService.statQuestnaire(questId); + } + + /** + * 问卷答题结果 + * + * @param questId 问卷ID + */ + @PostMapping("questnaire/answerslist") + public R answerResultList(@RequestParam("questId")Long questId){ + return comActQuestnaireService.answerResultList(questId); + } + /** + * 问卷题目 答卷信息 + * + * @param pageQuestnaireSubDetailsDTO 问卷ID + */ + @PostMapping("questnaire/qaqeustanswerdetails") + public R qaQeustAnswerDetails(@RequestBody PageQuestnaireSubDetailsDTO pageQuestnaireSubDetailsDTO){ + return comActQuestnaireService.qaQeustDetails(pageQuestnaireSubDetailsDTO); + } + + /** + * 社区问卷回答用户分页 + * @param pageQuestnaireAnswerDTO + * @return 分页数据 + */ + @PostMapping("questnaire/pagequestnaireanswer") + public R pageQuestnaireAnswer(@RequestBody PageQuestnaireAnswerDTO pageQuestnaireAnswerDTO){ + return comActQuestnaireService.pageQuestnaireAnswer(pageQuestnaireAnswerDTO); + } + + /** + * 居民填写问卷调查问卷 + * @param usersAnswerQuestnaireVO + */ + @PostMapping("questnaire/usersanswequestnaire") + public R usersAnsweQuestnaire(@RequestBody UsersAnswerQuestnaireVO usersAnswerQuestnaireVO,@RequestParam("userId") Long userId){ + return comActQuestnaireService.usersAnsweQuestnaire(usersAnswerQuestnaireVO,userId); + } + + /** + * 删除微心愿 + * @param id + * @return + */ + @PostMapping("deletemicrowish") + public R deletemicrowish(@RequestParam("id") Long id){ + return comActMicroWishService.deleteMicroWish(id); + } + /** + * 新增高龄认证 + * @param eldersAuthAddDTO + * @return 新增结果 + */ + @PostMapping("/eldersauth/add") + R add(@RequestBody EldersAuthAddDTO eldersAuthAddDTO){ + return eldersAuthService.add(eldersAuthAddDTO); + }; + /** + * 修改高龄认证 + * @param eldersAuthEditDTO + * @return 维护结果 + */ + @PostMapping("/eldersauth/edit") + R edit(@RequestBody EldersAuthEditDTO eldersAuthEditDTO){ + return eldersAuthService.edit(eldersAuthEditDTO); + }; + + /** + * 分页查找高龄认证 + * @param pageEldersAuthDTO + * @return 维护结果 + */ + @PostMapping("/eldersauth/page") + R<IPage<EldersAuthVO>> query(@RequestBody PageEldersAuthDTO pageEldersAuthDTO){ + return eldersAuthService.query(pageEldersAuthDTO); + }; + + /** + * 删除高龄认证 + * @param EldersAuthDeleteDTO + * @return 平台用户信息 + */ + @PostMapping("/eldersauth/delete") + R delete(@RequestBody EldersAuthDeleteDTO EldersAuthDeleteDTO){ + return eldersAuthService.delete(EldersAuthDeleteDTO); + }; + + /** + * 查询高龄认证详细信息 + * @param id 高龄认证 id + * @return 查找结果 + */ + @PostMapping("/eldersauth/{id}") + R<EldersAuthDetailsVO> eldersAuthDetails(@PathVariable("id") Long id){ + return eldersAuthService.eldersAuthDetails(id); + }; + + @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 -> { + int age = IdCard.IdNOToAge(rt.getIdCard()); + boolean isElders = age >= 80; + if (isElders) { + listRt.add(rt); + } + }); + return R.ok(listRt); + } + + @PostMapping("/eldersauth/addByFamilyUser") + @Transactional(rollbackFor = Exception.class) + R addByFamilyUser(@RequestBody EldersAuthAddByFamilyDTO eldersAuthAddByFamilyDTO){ + + ComEldersAuthUserDO authUserDO = comEldersAuthUserService.getById(eldersAuthAddByFamilyDTO.getFamilyUserId()); + if(authUserDO == null){ + return R.fail("未查询到老人信息"); + } + + Long elderId = authUserDO.getId(); + boolean canReAuthThisMonth = comEldersAuthUserService.checkReAuthAgain(elderId); + if(!canReAuthThisMonth){ + return R.fail("当月已认证,不能再次进行认证"); + } + + 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(); + } + + /** + * 新增高龄认证社区反馈 + * @param {classNameFirstLower}AddDTO 添加高龄认证社区反馈传递对象 + * @return 新增结果 + */ + @PostMapping("/eldersauth/addFeedback") + R add(@RequestBody EldersAuthFeedbackAddDTO eldersAuthFeedbackAddDTO){ + ClazzUtils.setIfStringIsEmpty(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; + } + + + /** + * 查询导出高龄老人 + * @param pageEldersAuthDTO + * @return + */ + @PostMapping("/eldersauth/eldersAuthQuery") + 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(); + } } -- Gitblit v1.7.1