package cn.com.goldenwater.dcproj.controller.hyst; import cn.com.goldenwater.dcproj.model.AttHystBase; import cn.com.goldenwater.dcproj.model.BisInspHystInfo; import cn.com.goldenwater.dcproj.model.BisInspHystRgstr; import cn.com.goldenwater.dcproj.param.AttHystBaseParam; import cn.com.goldenwater.dcproj.param.AttWintBaseBParam; import cn.com.goldenwater.dcproj.param.BisInspHystInfoParam; import cn.com.goldenwater.dcproj.service.AttHystBaseService; import cn.com.goldenwater.core.web.BaseController; import cn.com.goldenwater.core.web.BaseResponse; import cn.com.goldenwater.dcproj.service.BisInspHystInfoService; import cn.com.goldenwater.dcproj.service.BisInspHystRgstrService; import cn.com.goldenwater.dcproj.utils.BeanUtil; 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 com.github.pagehelper.PageInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.Assert; 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.RequestParam; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import java.util.Date; import java.util.List; /** * @author lune * @date 2021-3-2 */ @Api(value = "ATT 水电站基础信息表管理",tags="ATT 水电站基础信息表管理") @RestController @RequestMapping("/att/hyst/base") public class AttHystBaseController extends BaseController { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private AttHystBaseService attHystBaseService; @Autowired private BisInspHystRgstrService bisInspHystRgstrService; @ApiOperation(value = "添加/修改水电站基础信息表") @RequestMapping(value = "", method = RequestMethod.POST) public BaseResponse insert(@ApiParam(name = "attHystBase", value = "AttHystBase", required = true) @RequestBody AttHystBase attHystBase) { if(StringUtils.isBlank(attHystBase.getId())) { // 生成uuid String uuid = UuidUtil.uuid(); attHystBase.setId(uuid); attHystBase.setIntm(new Date()); attHystBaseService.insert(attHystBase); }else{ attHystBase.setUptm(new Date()); attHystBaseService.update(attHystBase); } return buildSuccessResponse(attHystBase); } @ApiOperation(value = "根据ID删除水电站基础信息表") @RequestMapping(value = "/del/{id}", method = RequestMethod.GET) public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { int ret = attHystBaseService.delete(id); return buildSuccessResponse(); } @ApiOperation(value = "根据ID获取水电站基础信息表(单表)") @RequestMapping(value = "/{id}", method = RequestMethod.GET) public BaseResponse get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { AttHystBase attHystBase = attHystBaseService.get(id); return buildSuccessResponse(attHystBase); } @ApiOperation(value = "获取水电站基础信息表(列表所有)") @RequestMapping(value = "/list", method = RequestMethod.POST) public BaseResponse> list(@ApiParam(name = "attHystBaseParam", value = "attHystBaseParam", required = true) @RequestBody AttHystBaseParam attHystBaseParam) { List attHystBaseList = attHystBaseService.findList(attHystBaseParam); return buildSuccessResponse(attHystBaseList); } @ApiOperation(value = "获取水电站基础信息表(列表--分页)") @RequestMapping(value = "/page", method = RequestMethod.POST) public BaseResponse> page(@ApiParam(name = "attHystBaseParam", value = "attHystBaseParam", required = true) @RequestBody AttHystBaseParam attHystBaseParam) { PageInfo attHystBaseList = attHystBaseService.findPageInfo(attHystBaseParam); return buildSuccessResponse(attHystBaseList); } @Autowired private BisInspHystInfoService bisInspHystInfoService; @ApiOperation(value = "添加列表--获取水电站基础信息列表-(列表--分页)") @RequestMapping(value = "/find/page", method = RequestMethod.POST) public BaseResponse> findPage(@ApiParam(name = "param", value = "param", required = true) @RequestBody BisInspHystInfoParam param) { PageInfo attHystBaseList = attHystBaseService.getListInfo(param); return buildSuccessResponse(attHystBaseList); } @ApiOperation(value = "添加小水电到登记列表") @RequestMapping(value = "/add/list", method = RequestMethod.POST) public BaseResponse addToRgstrList(@ApiParam(name = "attHystBaseParam", value = "attHystBaseParam", required = true) @RequestBody List list) { if(list == null && list.size()<=0){ return buildFailResponse("参数错误,无可添加小水电信息!"); } for(AttHystBaseParam base :list){ BisInspHystInfo bisInspHystInfo = new BisInspHystInfo(); BeanUtil.copyObject1(base, bisInspHystInfo); bisInspHystInfo.setId(UuidUtil.uuid()); bisInspHystInfo.setBaseId(base.getId()); //状态 bisInspHystInfoService.insert(bisInspHystInfo); } //更改登记表状态督查中 AttHystBaseParam attHystBaseParam = list.get(0); if(attHystBaseParam != null && attHystBaseParam.getRgstrId() != null){ String rgstrId = attHystBaseParam.getRgstrId(); if(StringUtils.isNotBlank(rgstrId)){ BisInspHystRgstr bisInspHystRgstr = bisInspHystRgstrService.get(rgstrId); if(!"2".equals(bisInspHystRgstr.getState())){ bisInspHystRgstr.setUptm(new Date()); bisInspHystRgstr.setState("1"); bisInspHystRgstrService.update(bisInspHystRgstr); } } } return buildSuccessResponse(); } @ApiOperation(value = "类型导入",notes = "类型导入") @RequestMapping(value = "/impExcelTest",method = RequestMethod.POST) public BaseResponse impExcelTest(MultipartFile file, AttHystBaseParam attBaseBParam){ List list = attHystBaseService.impExcelTest(file,attBaseBParam); return buildSuccessResponse(list); } @ApiOperation(value = "类型导入",notes = "类型导入") @RequestMapping(value = "/impExcelTest/xy",method = RequestMethod.POST) public BaseResponse impExcelTestXY(MultipartFile file, AttHystBaseParam attBaseBParam){ List list = attHystBaseService.impExcelTestXY(file,attBaseBParam); return buildSuccessResponse(list); } @ApiOperation(value = "导入水电基础信息",notes = "导入水电基础信息") @RequestMapping(value = "/upload",method = RequestMethod.POST) public BaseResponse upload(MultipartFile file, AttHystBaseParam attBaseBParam){ List list = attHystBaseService.upload(file,attBaseBParam); return buildSuccessResponse(list); } @ApiOperation(value = "导入水电投产日期",notes = "导入水电基础信息") @RequestMapping(value = "/uploadComp",method = RequestMethod.POST) public BaseResponse uploadComp(MultipartFile file, AttHystBaseParam attBaseBParam){ List list = attHystBaseService.uploadComp(file,attBaseBParam); return buildSuccessResponse(list); } }