| | |
| | | Long userId = answerQuestnaireVO.getUserId(); |
| | | Long questId = answerQuestnaireVO.getQuestId(); |
| | | Date nowDate = new Date(); |
| | | |
| | | ComActQuestnaireDO questnaireDO = questnaireDAO.selectById(questId); |
| | | if (questnaireDO == null) { |
| | | return R.fail("调查问卷不存在!"); |
| | |
| | | return R.ok(result); |
| | | } |
| | | |
| | | /** |
| | | * 问卷调查统计汇总 |
| | | * @param summaryDTO 请求参数 |
| | | * @return 统计汇总 |
| | | */ |
| | | @Override |
| | | public R statisticsSummary(StatisticsSummaryDTO summaryDTO){ |
| | | IPage<QuestnaireStatisticsSummaryAdminVO> summaryAdminList = questnaireDAO.getStatisticsSummaryAdmin(new Page(summaryDTO.getPageNum(),summaryDTO.getPageSize()),summaryDTO); |
| | |
| | | summary.setTag(BigDecimal.valueOf(summary.getCount()).divide(BigDecimal.valueOf(summary.getAllCount()),2, RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100))); |
| | | } |
| | | }); |
| | | return R.ok(questnaireDAO.getStatisticsSummaryAdmin(new Page(summaryDTO.getPageNum(),summaryDTO.getPageSize()),summaryDTO)); |
| | | return R.ok(summaryAdminList); |
| | | } |
| | | |
| | | /** |
| | | * 问卷调查统计汇总导出数据查询 |
| | | * @param questId 调查问卷id |
| | | * @return 调查统计汇总导出数据 |
| | | */ |
| | | @Override |
| | | public R statisticsSummaryExport(Long questId){ |
| | | List<QuestnaireStatisticsSummaryExcelAdminVO> summaryExcelList = questnaireDAO.getStatisticsSummaryExcelAdmin(questId); |
| | |
| | | return R.ok(summaryExcelList); |
| | | } |
| | | |
| | | /** |
| | | * 问卷调查统计汇总表头统计 |
| | | * @param questId 调查问卷id |
| | | * @return 问卷调查统计汇总表头统计数据 |
| | | */ |
| | | @Override |
| | | public R statisticsSummaryHeader(Long questId){ |
| | | QuestnaireStatisticsSummaryHeaderAdminVO summaryHeaderAdminVO = this.questnaireDAO.statisticsSummaryHeader(questId); |
| | | public R statisticsSummaryHeader(Long questId,Long communityId){ |
| | | QuestnaireStatisticsSummaryHeaderAdminVO summaryHeaderAdminVO = this.questnaireDAO.statisticsSummaryHeader(questId,communityId); |
| | | if(summaryHeaderAdminVO != null){ |
| | | if(!summaryHeaderAdminVO.getUserCount().equals(0)){ |
| | | BigDecimal nub1 = BigDecimal.valueOf(summaryHeaderAdminVO.getAllCount()); |
| | | BigDecimal nub2 = BigDecimal.valueOf(summaryHeaderAdminVO.getUserCount()); |
| | | BigDecimal result = nub1.divide(nub2,2,RoundingMode.HALF_UP).multiply(BigDecimal.valueOf(100)); |
| | | summaryHeaderAdminVO.setTag(result); |
| | | } |
| | | } |
| | | return R.ok(summaryHeaderAdminVO); |
| | | } |
| | | |
| | | /** |
| | | * 定时任务检测待发布,调研中的问卷调查状态 |
| | | */ |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R timedTaskQuestionnaire(){ |
| | |
| | | //查询所有开始时间已经超过当前时间的待发布状态调查问卷 |
| | | List<ComActQuestnaireDO> questnaireDOList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>().lambda() |
| | | .eq(ComActQuestnaireDO::getState,ComActQuestnaireDO.state.dfb).eq(ComActQuestnaireDO::getIsHide,0) |
| | | .ge(ComActQuestnaireDO::getStartTime,nowDate)); |
| | | .le(ComActQuestnaireDO::getStartTime,nowDate)); |
| | | questnaireDOList.forEach(questnaire -> { |
| | | questnaire.setState(ComActQuestnaireDO.state.dyz); |
| | | questnaire.setPublishTime(nowDate); |
| | |
| | | //查询所有结束时间已经超过当前时间的调研中状态调查问卷 |
| | | List<ComActQuestnaireDO> questnaireList = questnaireDAO.selectList(new QueryWrapper<ComActQuestnaireDO>().lambda() |
| | | .eq(ComActQuestnaireDO::getState,ComActQuestnaireDO.state.dyz).eq(ComActQuestnaireDO::getIsHide,0) |
| | | .ge(ComActQuestnaireDO::getEndTime,nowDate)); |
| | | .le(ComActQuestnaireDO::getEndTime,nowDate)); |
| | | questnaireList.forEach(questnaire -> { |
| | | questnaire.setState(ComActQuestnaireDO.state.yjs); |
| | | questnaireDAO.updateById(questnaire); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 小程序-新增问卷调查浏览数量 |
| | | * @param questId 问卷调查id |
| | | * @return 增加结果 |
| | | */ |
| | | @Override |
| | | public R addQuestnaireView(Long questId){ |
| | | ComActQuestnaireDO questnaireDO = questnaireDAO.selectById(questId); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 小程序-用户弹窗添加不在提醒接口 |
| | | * @param questId 问卷id |
| | | * @param userId 用户id |
| | | * @return 添加结果 |
| | | */ |
| | | @Override |
| | | public R addNoNotice(Long questId,Long userId){ |
| | | questnaireDAO.addNoNotice(questId,userId); |