package cn.com.goldenwater.dcproj.controller.rsvr; import cn.com.goldenwater.dcproj.dao.BisInspBaseViewDao; import cn.com.goldenwater.dcproj.model.BisInspBaseView; import cn.com.goldenwater.dcproj.model.BisInspPreList; import cn.com.goldenwater.dcproj.param.BisInspBaseViewParam; import cn.com.goldenwater.dcproj.param.BisInspPreListParam; import cn.com.goldenwater.dcproj.service.BisInspBaseViewService; import cn.com.goldenwater.core.web.BaseController; import cn.com.goldenwater.core.web.BaseResponse; import cn.com.goldenwater.dcproj.service.BisInspPreListService; import cn.com.goldenwater.dcproj.service.BisInspRsvrRgstrService; import cn.com.goldenwater.id.util.UuidUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import java.util.Date; import java.util.List; /** * @author lune * @date 2019-2-18 */ @Api(value = "APP 水库走访访问人员情况", tags = "APP 水库走访访问人员情况") @RestController @RequestMapping("/dc/insp/baseView") public class BisInspBaseViewController extends BaseController { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private BisInspBaseViewService bisInspBaseViewService; @Autowired private BisInspBaseViewDao bisInspBaseViewDao; @Autowired private BisInspPreListService bisInspPreListService; @Autowired private BisInspRsvrRgstrService bisInspRsvrRgstrService; @ApiOperation(value = "添加走访人员情况") @RequestMapping(value = "", method = RequestMethod.POST) public BaseResponse insert(@ApiParam(name = "bisInspBaseView", value = "BisInspBaseView", required = true) @RequestBody BisInspBaseView bisInspBaseView) { bisInspBaseView.setUpdateTime(new Date()); BisInspBaseView baseView = bisInspBaseViewDao.getViewByRgstrId(bisInspBaseView.getRgstrId()); bisInspBaseView.setStatus("0"); if (baseView == null) { String uuid = UuidUtil.uuid(); bisInspBaseView.setViewId(uuid); bisInspBaseView.setCreateTime(new Date()); bisInspBaseViewService.insertBaseView(bisInspBaseView); } else { bisInspBaseViewService.update(bisInspBaseView); } return buildSuccessResponse(bisInspBaseView); } @ApiOperation(value = "根据ID删除走访人员情况") @RequestMapping(value = "/delete/{id}", method = RequestMethod.GET) public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { int ret = bisInspBaseViewService.deleteBaseView(id); return buildSuccessResponse(); } @ApiOperation(value = "更新走访人员情况信息") @RequestMapping(value = "/update", method = RequestMethod.POST) public BaseResponse update(@ApiParam(name = "bisInspBaseView", value = "BisInspBaseView", required = true) @RequestBody BisInspBaseView bisInspBaseView) { bisInspBaseView.setUpdateTime(new Date()); int ret = bisInspBaseViewService.updateBaseView(bisInspBaseView); if (StringUtils.isBlank(bisInspBaseView.getRgstrId())) { bisInspBaseView = bisInspBaseViewService.get(bisInspBaseView.getViewId()); } bisInspRsvrRgstrService.updateRsvr(bisInspBaseView.getRgstrId(), bisInspBaseView.getStatus(), "view"); return buildSuccessResponse(bisInspBaseView); } @ApiOperation(value = "根据ID获取走访人员信息(单表)") @RequestMapping(value = "/{id}", method = RequestMethod.GET) public BaseResponse get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { BisInspBaseView bisInspBaseView = bisInspBaseViewService.get(id); if (bisInspBaseView != null) { BisInspPreListParam inspPreListParam = new BisInspPreListParam(); inspPreListParam.setViewId(bisInspBaseView.getViewId()); List bisInspPreList = bisInspPreListService.findList(inspPreListParam); bisInspBaseView.setInspPreLists(bisInspPreList); } return buildSuccessResponse(bisInspBaseView); } @ApiOperation(value = "根据督查登记表ID获取走访人员基本信息,包含走访用户列表") @RequestMapping(value = "/get/{rgstrId}", method = RequestMethod.GET) public BaseResponse getByRgstrId(@ApiParam(name = "rgstrId", value = "rgstrId", required = true) @PathVariable String rgstrId) { BisInspBaseViewParam bisInspBaseViewParam = new BisInspBaseViewParam(); bisInspBaseViewParam.setRgstrId(rgstrId); BisInspBaseView inspBaseView = bisInspBaseViewService.getBy(bisInspBaseViewParam); return buildSuccessResponse(inspBaseView); } }