package com.care.bms.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.care.bms.service.HouseService; import com.care.common.annotation.Permission; import com.care.common.exception.BDException; import com.care.common.util.PageResult; import com.care.common.util.Result; import com.care.common.util.WebPageUtils; import com.care.common.vo.PageReqVO; import com.care.common.vo.UserLogindConvertVO; import com.care.common.vo.device.HouseVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.List; /** * @Author: lilt * @Date: 2021/5/26 * @Desc: */ @RestController @Api(value = "HouseController", tags = { "房屋管理---二期去除" }) @Slf4j @RequestMapping("/bms/house") @Permission public class HouseController { @Autowired private HouseService houseService; @GetMapping("/list") @ApiOperation(value = "房屋列表分页") @ApiImplicitParams(value = { @ApiImplicitParam(paramType = "query", name = "status", value = "状态"), @ApiImplicitParam(paramType = "query", name = "addr", value = "地址"), @ApiImplicitParam(paramType = "query", name = "stationId", value = "服务站ID"), }) public PageResult> listHouse(HttpServletRequest request, @RequestHeader(value = "token") String token, @RequestParam(value = "status", required = false) String status, @RequestParam(value = "addr", required = false) String addr, @RequestParam(value = "stationId", required = false) Long stationId, PageReqVO pageReqVo){ try { UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request); IPage pageResponse = this.houseService.listHouse(addr,stationId,status,loginUser ,pageReqVo); return PageResult.success(pageResponse.getRecords(),pageResponse.getCurrent(),pageResponse.getSize(),pageResponse.getTotal()); }catch (BDException e) { log.error("房屋列表查询-分页列表出现异常",e); return PageResult.error(e.getMessage()); } catch (Exception e) { log.error("房屋管理: 房屋列表查询出现异常",e); return PageResult.error( "获取列表失败"); } } @PostMapping("/add") @ApiOperation(value = "新增房屋") public Result addHouse(HttpServletRequest request,@RequestHeader("token") String token, @RequestBody HouseVO vo){ try { UserLogindConvertVO loginUser = WebPageUtils.getCurrentLoginedUser(request); this.houseService.createHouse(vo,loginUser); return Result.success("新增成功!"); }catch (BDException e) { log.error("新增房屋-出现异常",e); return Result.error(e.getMessage()); } catch (Exception e) { log.error("房屋管理: 新增房屋出现异常",e); return Result.error("新增失败!"); } } @PostMapping("/update") @ApiOperation(value = "新增房屋") public Result update(HttpServletRequest request,@RequestHeader("token") String token, @RequestBody HouseVO vo){ try { this.houseService.updateHouse(vo); return Result.success("修改成功!"); }catch (BDException e) { log.error("修改房屋-出现异常",e); return Result.error(e.getMessage()); } catch (Exception e) { log.error("房屋管理: 修改房屋出现异常",e); return Result.error("修改失败!"); } } @GetMapping("/getHouseInfo/{houseId}") @ApiOperation(value = "详情") public Result getHouseInfo(HttpServletRequest request,@RequestHeader("token") String token,@PathVariable("houseId") Long houseId){ HouseVO orderInfo = this.houseService.getHouseById(houseId); return Result.success("查询成功!",orderInfo); } @PostMapping("/del/{houseId}") @ApiOperation(value = "新增房屋") public Result delete(HttpServletRequest request,@RequestHeader("token") String token, @PathVariable("houseId") Long houseId){ try { this.houseService.deleteById(houseId); return Result.success("删除成功!"); } catch (Exception e) { log.error("房屋管理: 删除出现异常",e); return Result.error("删除失败!"); } } /** *服务站下拉列表 * @param request * @return */ @GetMapping("/list4Select") @ApiOperation(tags = {"设备管理"},value = "某个服务站下的房屋下拉列表") public Result> listNotHandle(HttpServletRequest request, @RequestHeader(value = "token") String token, @RequestParam(name = "stationId") Long stationId){ try { List datas = this.houseService.queryHouseListByStationId(stationId); return Result.success(datas); }catch (Exception e) { log.error("某个服务站下的房屋下拉列表现异常",e); return Result.error( "获取列表失败"); } } }