package com.panzhihua.grid_app.api; import javax.annotation.Resource; import javax.validation.Valid; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import com.panzhihua.common.controller.BaseController; import com.panzhihua.common.model.dtos.grid.*; import com.panzhihua.common.model.vos.LoginUserInfoVO; import com.panzhihua.common.model.vos.R; import com.panzhihua.common.model.vos.grid.EventGridDataDetailsVO; import com.panzhihua.common.model.vos.grid.EventGridDataVO; import com.panzhihua.common.model.vos.grid.UserEventGridDataVO; import com.panzhihua.common.service.grid.GridService; import com.panzhihua.common.utlis.ClazzUtils; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; /** * * @author cedoo email:cedoo(a)qq.com * @version 1.0 * @since 1.0 * @date 2021-05-26 */ @Slf4j @RestController @RequestMapping("/eventgriddata") @Api(tags = {"网格数据管理 @chendong"}) public class EventGridDataApi extends BaseController { @Resource private GridService gridService; /** * 我的网格 * * @return 查找结果 */ @GetMapping("/myGrid") @ApiOperation(value = "我的网格", response = EventGridDataVO.class) R myGrid() { LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo(); PageEventGridDataDTO pageEventGridDataDTO = new PageEventGridDataDTO(); pageEventGridDataDTO.setUserId(loginUserInfoVO.getUserId()); pageEventGridDataDTO.setType(3l); return gridService.userGrid(pageEventGridDataDTO); } /** * 网格数据待处理统计信息 * * @return 查找结果 */ @GetMapping("/myGridTodoData") @ApiOperation(value = "网格待处理统计数据", response = UserEventGridDataVO.class) R myTodoGridData(@Valid @ModelAttribute EventGridTodoDataDTO eventGridTodoDataDTO) { LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo(); eventGridTodoDataDTO.setUserId(loginUserInfoVO.getUserId()); return gridService.getGridTodoData(eventGridTodoDataDTO); } /** * 网格数据待处理统计信息 * * @return 查找结果 */ @GetMapping("/statistics/{gridId}") @ApiOperation(value = "网格统计数据", response = UserEventGridDataVO.class) R myGridData(@PathVariable("gridId") Long gridId) { LoginUserInfoVO loginUserInfoVO = this.getLoginUserInfo(); EventGridStatisticsDataDTO eventGridStatisticsDataDTO = new EventGridStatisticsDataDTO(); eventGridStatisticsDataDTO.setUserId(loginUserInfoVO.getUserId()); eventGridStatisticsDataDTO.setGridId(gridId); return gridService.getGridStatisticsdData(eventGridStatisticsDataDTO); } // === /** * 新增区县/街道/社区/网格员网格数据管理 * * @param {classNameFirstLower}AddDTO * 添加区县/街道/社区/网格员网格数据管理传递对象 * @return 新增结果 */ @PostMapping() @ApiOperation(value = "新增区县/街道/社区/网格员网格数据管理", response = R.class) R add(@Validated @RequestBody EventGridDataAddDTO eventGridDataAddDTO) { ClazzUtils.setIfStringIsEmpty(eventGridDataAddDTO); eventGridDataAddDTO.setUserId(getUserId()); return gridService.add(eventGridDataAddDTO); } /** * 修改 * * @param eventGridDataEditDTO * 修改区县/街道/社区/网格员网格数据管理传递对象 * @return 修改结果 */ @PutMapping() @ApiOperation(value = "编辑区县/街道/社区/网格员网格数据管理", response = R.class) R edit(@Validated @RequestBody EventGridDataEditDTO eventGridDataEditDTO) { ClazzUtils.setIfStringIsEmpty(eventGridDataEditDTO); eventGridDataEditDTO.setUserId(getUserId()); return gridService.edit(eventGridDataEditDTO); } /** * 分页查找 * * @param pageEventGridDataDTO * 查找区县/街道/社区/网格员网格数据管理传递对象 * @return 查找结果 */ @GetMapping() @ApiOperation(value = "查询区县/街道/社区/网格员网格数据管理", response = EventGridDataVO.class) R query(@Validated @ModelAttribute PageEventGridDataDTO pageEventGridDataDTO) { ClazzUtils.setIfStringIsEmpty(pageEventGridDataDTO); return gridService.query(pageEventGridDataDTO); } /** * 删除 * * @param eventGridDataDeleteDTO * 删除区县/街道/社区/网格员网格数据管理传递对象 * @return 删除结果 */ @DeleteMapping() @ApiOperation(value = "删除区县/街道/社区/网格员网格数据管理", response = R.class) R delete(@Validated @RequestBody EventGridDataDeleteDTO eventGridDataDeleteDTO) { ClazzUtils.setIfStringIsEmpty(eventGridDataDeleteDTO); return gridService.delete(eventGridDataDeleteDTO); } /** * 查询区县/街道/社区/网格员网格数据管理详细信息 * * @param id * 区县/街道/社区/网格员网格数据管理 id * @return 查找结果 */ @GetMapping("/{id}") @ApiOperation(value = "查询区县/街道/社区/网格员网格数据管理详细信息") R details(@PathVariable("id") Long id) { return gridService.eventGridDataDetails(id); } }