package com.panzhihua.service_community.api; import java.util.List; import javax.annotation.Resource; import org.springframework.web.bind.annotation.*; import com.panzhihua.common.model.dtos.community.CancelRecordDTO; import com.panzhihua.common.model.dtos.community.OperationDetailDTO; import com.panzhihua.common.model.dtos.community.PageUserReserveDTO; import com.panzhihua.common.model.dtos.community.reserve.*; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.community.ComActReserveCommitVO; import com.panzhihua.common.model.vos.community.reserve.ComActReserveDetailAdminVO; import com.panzhihua.service_community.service.*; import lombok.extern.slf4j.Slf4j; /** * 预约登记 */ @Slf4j @RestController @RequestMapping("/reserve/") public class ComActReserveApi { @Resource private ComActReserveService comActReserveService; @Resource private ComActReserveRecordService comActReserveRecordService; @Resource private ComActReserveAnswerContentService comActReserveAnswerContentService; @Resource private ComActReserveOperationRecordService comActReserveOperationRecordService; @Resource private ComActReserveSubService comActReserveSubService; /** * 社区后台-分页查询预约登记列表 * @param pageReserveDTO 请求参数 * @return 预约登记列表 */ @PostMapping("/admin/page") public R pageReserveAdmin(@RequestBody PageReserveAdminDTO pageReserveDTO){ return comActReserveService.pageReserveAdmin(pageReserveDTO); } /** * 社区后台-新增预约登记信息 * @param addReserveDTO 请求参数 * @return 新增结果 */ @PostMapping("/admin/add") public R addReserveAdmin(@RequestBody AddReserveAdminDTO addReserveDTO){ return comActReserveService.addReserveAdmin(addReserveDTO); } /** * 社区后台-编辑预约登记信息 * @param editReserveDTO 请求参数 * @return 新增结果 */ @PostMapping("/admin/edit") public R editReserveAdmin(@RequestBody EditReserveAdminDTO editReserveDTO){ return comActReserveService.editReserveAdmin(editReserveDTO); } /** * 社区后台-修改预约登记状态 * @param editReserveDTO 请求参数 * @return 修改结果 */ @PostMapping("/admin/edit/status") public R editReserveStatusAdmin(@RequestBody EditComActReserveStatusDTO editReserveDTO){ return comActReserveService.editReserveStatusAdmin(editReserveDTO); } /** * 社区后台-继续预约登记 * @param editReserveDTO 请求参数 * @return 修改结果 */ @PostMapping("/admin/edit/info") public R editReserveInfoAdmin(@RequestBody EditComActReserveInfoDTO editReserveDTO){ return comActReserveService.editReserveInfoAdmin(editReserveDTO); } /** * 社区后台-根据预约登记id查询详情 * @param reserveId 预约登记id * @return 预约登记详情 */ @GetMapping("/admin/detail") public R detailReserveAdmin(@RequestParam("reserveId") Long reserveId) { return comActReserveService.detailReserveAdmin(reserveId); } /** * 预约登记详情 * @param id * @return */ @GetMapping("/detail") public R detail(@RequestParam("id") Long id,@RequestParam("userId") Long userId,@RequestParam("recordId") Long recordId,@RequestParam("isBack") Integer isBack){ if(id!=null){ return comActReserveService.getById(id,userId,recordId,isBack); } return R.fail(); } /** * 外部调用提交预约/登记 * @param comActReserveCommitVO * @return */ @PostMapping("/commitNoToken") public R commitNoToken(@RequestBody ComActReserveCommitVO comActReserveCommitVO){ return comActReserveService.commitNoToken(comActReserveCommitVO); } /** * 外部调用提交居家隔离 * @param comActReserveCommitVO * @return */ @PostMapping("/homeQuarantine/commitNoToken") public R homeQuarantineCommitNoToken(@RequestBody ComActReserveCommitVO comActReserveCommitVO){ return comActReserveService.commitNoToken(comActReserveCommitVO); } /** * 小程序提交预约/登记 * @param comActReserveCommitVO * @return */ @PostMapping("/commit") public R commit(@RequestBody ComActReserveCommitVO comActReserveCommitVO){ return comActReserveService.commit(comActReserveCommitVO); } /** * 社区后台-根据社区id统计预约类数据 * @param makeStatisticsDTO 请求参数 * @return 统计预约类数据 */ @PostMapping("/admin/make/statistics") public R makeStatisticsAdmin(@RequestBody ComActReserveMakeStatisticsDTO makeStatisticsDTO){ return comActReserveService.makeStatisticsAdmin(makeStatisticsDTO); } /** * 社区后台-查询导出预约统计汇总数据 * @param makeStatisticsDTO 请求参数 * @return 统计预约类数据 */ @PostMapping("/admin/make/statistics/export") public R makeStatisticsExportAdmin(@RequestBody ComActReserveMakeStatisticsDTO makeStatisticsDTO){ return comActReserveService.makeStatisticsExportAdmin(makeStatisticsDTO); } /** * 社区后台-根据预约id查询预约明细 * @param pageMakeDTO 请求参数 * @return 预约明细 */ @PostMapping("/admin/make/page") public R pageMakeAdmin(@RequestBody PageReserveMakeAdminDTO pageMakeDTO){ return comActReserveRecordService.pageMakeAdmin(pageMakeDTO); } /** * 根据预约记录id查询预约明细操作记录 * @param reserveRecordId 预约记录id * @return 预约明细操作记录 */ @GetMapping("/admin/make/detail") public R detailMakeAdmin(@RequestParam("reserveRecordId") Long reserveRecordId){ return comActReserveRecordService.detailMakeAdmin(reserveRecordId); } /** * 批量取消预约记录 * @param reserveRecordDTO 请求参数 * @return 取消结果 */ @PostMapping("/admin/make/cancel") public R makeCancelAdmin(@RequestBody CancelReserveRecordDTO reserveRecordDTO){ return comActReserveRecordService.makeCancelAdmin(reserveRecordDTO); } /** * 预约明细导出数据查询 * @param pageMakeDTO 请求参数 * @return 预约明细数据 */ @PostMapping("/admin/make/list/export") public R exportMakeAdmin(@RequestBody PageReserveMakeAdminDTO pageMakeDTO){ return comActReserveRecordService.exportMakeAdmin(pageMakeDTO); } /** * 分页查询登记统计汇总 * @param registerStatisticsDTO 请求参数 * @return 登记统计汇总 */ @PostMapping("/admin/register/page") public R registerStatisticsAdmin(@RequestBody ComActReserveRegisterStatisticsDTO registerStatisticsDTO){ return comActReserveRecordService.registerStatisticsAdmin(registerStatisticsDTO); } /** * 导出登记统计汇总 * @param registerStatisticsDTO 请求参数 * @return 登记统计汇总 */ @PostMapping("/admin/register/export") public R registerStatisticsExportAdmin(@RequestBody ComActReserveRegisterStatisticsDTO registerStatisticsDTO){ return comActReserveRecordService.registerStatisticsExportAdmin(registerStatisticsDTO); } /** * 分页查询预约处理列表 * @param pageMakeHandleDTO 请求参数 * @return 预约处理列表 */ @PostMapping("/admin/make/handle/page") public R pageMakeHandleAdmin(@RequestBody PageReserveMakeHandleAdminDTO pageMakeHandleDTO){ return comActReserveRecordService.pageMakeHandleAdmin(pageMakeHandleDTO); } /** * 批量处理预约记录 * @param makeHandleDTO 请求参数 * @return 处理结果 */ @PostMapping("/admin/make/handle") public R makeHandleAdmin(@RequestBody MakeHandleAdminDTO makeHandleDTO){ return comActReserveRecordService.makeHandleAdmin(makeHandleDTO); } /** * 导出预约处理列表数据查询 * @param pageMakeHandleDTO 请求参数 * @return 预约处理列表 */ @PostMapping("/admin/make/handle/export") public R exportMakeHandleAdmin(@RequestBody PageReserveMakeHandleAdminDTO pageMakeHandleDTO){ return comActReserveRecordService.exportMakeHandleAdmin(pageMakeHandleDTO); } /** * 删除预约登记信息 * @param reserveId 预约登记id * @return 删除结果 */ @GetMapping("/admin/delete") public R deleteReserveAdmin(@RequestParam("reserveId") Long reserveId){ return comActReserveService.deleteReserveAdmin(reserveId); } /** * 查询社区所有预约信息列表 * @param communityId 社区id * @return 预约信息列表 */ @GetMapping("/admin/list") public R listReserveAdmin(@RequestParam("communityId") Long communityId){ return comActReserveService.listReserveAdmin(communityId); } /** * 导出登记明细数据 * @param pageReserveRegisterDetailedAdminDTO 登记id * @return 登记明细数据 */ @PostMapping("/admin/register/list/export") public R exportRegisterAdmin(@RequestBody PageReserveRegisterDetailedAdminDTO pageReserveRegisterDetailedAdminDTO){ return comActReserveAnswerContentService.exportRegisterAdmin(pageReserveRegisterDetailedAdminDTO); } /** * 我的预约/登记 * @param pageUserReserveDTO * @return */ @PostMapping("/userReserveList") public R userReserveList(@RequestBody PageUserReserveDTO pageUserReserveDTO){ return comActReserveService.pageReserveList(pageUserReserveDTO); } /** * 取消预约/登记 */ @PostMapping("/cancelReserve") public R userCancelReserve(@RequestBody CancelRecordDTO cancelRecordDTO){ return comActReserveRecordService.cancel(cancelRecordDTO); } /** * 预约详情操作记录 */ @PostMapping("/detailOperation") public R reserveOperation(@RequestBody OperationDetailDTO comActReserveOperationRecordDO){ return comActReserveOperationRecordService.detailOperationRecord(comActReserveOperationRecordDO); } /** * 查询预约登记题目列表 * @param reserveId 预约登记id * @return 约登记题目列表 */ @GetMapping("/admin/subject/list") public R subjectListAdmin(@RequestParam("reserveId") Long reserveId){ return comActReserveSubService.subjectListAdmin(reserveId); } /** * 查询预约登记题目下属选择项列表 * * @param reserveSubId * 预约登记id * @return 查询预约登记题目下属选择项列表 */ @GetMapping("/admin/subject/selection/list") public List subjectSelectionListAdmin(@RequestParam("reserveSubId") Long reserveSubId) { return comActReserveSubService.subjectSelectionListAdmin(reserveSubId); } /** * 分页查询登记明细列表 * @param detailedAdminDTO 请求参数 * @return 登记明细列表 */ @PostMapping("/admin/register/detailed/list") public R registerDetailedListAdmin(@RequestBody PageReserveRegisterDetailedAdminDTO detailedAdminDTO){ return comActReserveAnswerContentService.registerDetailedListAdmin(detailedAdminDTO); } /** * 导出登记明细列表 * @param detailedAdminDTO 请求参数 * @return 登记明细列表 */ @PostMapping("/admin/register/detailed/list/export") public R registerDetailedListAdminExport(@RequestBody PageReserveRegisterDetailedAdminDTO detailedAdminDTO){ return comActReserveAnswerContentService.registerDetailedListAdminExport(detailedAdminDTO); } @GetMapping("/admin/register/detailed/detail") public R registerDetailedDetailAdmin(@RequestParam("reserveRecordId") Long reserveRecordId){ return comActReserveRecordService.registerDetailedDetailAdmin(reserveRecordId); } /** * 小程序查询所有进行中的预约登记 * @param communityId 社区id * @return 社区所有进行中的预约登记列表 */ @GetMapping("/list") public R list(@RequestParam("communityId") Long communityId){ return comActReserveService.reserveListApplets(communityId); } /** * 分页查询居家隔离统计 * @param detailedAdminDTO * @return */ @PostMapping("/admin/register/homeQuarantine/page") public R pageRegisterHomeQuarantine(@RequestBody PageReserveRegisterDetailedAdminDTO detailedAdminDTO) { return comActReserveAnswerContentService.pageRegisterHomeQuarantine(detailedAdminDTO); } /** * 居家隔离导出 * @param detailedAdminDTO * @return */ @PostMapping("/admin/homeQuarantine/export") public R exportHomeQuarantine(@RequestBody PageReserveRegisterDetailedAdminDTO detailedAdminDTO) { return comActReserveAnswerContentService.exportHomeQuarantine(detailedAdminDTO); } @GetMapping("/bigScreenStaticsReserve") public R bigScreenStaticsReserve(@RequestParam("communityId") Long communityId){ return comActReserveAnswerContentService.bigScreenStaticsReserve(communityId); } @GetMapping("/record/delete") public R deleteRecord(@RequestParam("recordId")Long recordId){ return R.ok(comActReserveRecordService.removeById(recordId)); } @GetMapping("/fiveCount") public R fiveCount(@RequestParam("reserveId") Long reserveId){ return comActReserveRecordService.fiveCount(reserveId); } }