package com.dy.pipIrrModel.vapor; import com.dy.common.aop.SsoAop; import com.dy.common.util.DateTime; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.ResultCodeMsg; import com.dy.pipIrrGlobal.pojoMd.MdEt0; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.media.Content; import io.swagger.v3.oas.annotations.media.Schema; import io.swagger.v3.oas.annotations.responses.ApiResponse; import io.swagger.v3.oas.annotations.responses.ApiResponses; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.MediaType; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; /** * @Author: liurunyu * @Date: 2025/8/19 16:21 * @Description */ @Slf4j @Tag(name = "作物日蒸腾量", description = "作物日蒸腾量查询等操作") @RestController @RequestMapping(path = "mdVapor") public class VaporCtrl { private VaporSv sv; @Autowired private void setSv(VaporSv sv) { this.sv = sv; } /** * 客户端请求得到所有作物的昨日蒸腾量 * @return 所有所有作物的昨日蒸腾量 */ @Operation(summary = "获得作物的昨日蒸腾量", description = "返回所有作物的昨日蒸腾量数据") @ApiResponses(value = { @ApiResponse( responseCode = ResultCodeMsg.RsCode.SUCCESS_CODE, description = "返回作物的昨日蒸腾量数据(BaseResponse.content:QueryResultVo[{}])", content = {@Content(mediaType = MediaType.APPLICATION_JSON_VALUE, schema = @Schema(implementation = MdEt0.class))} ) }) @GetMapping(path = "allYesterday") @SsoAop() public BaseResponse> allYesterday(){ try { String ymd = DateTime.yesterday_yyyy_MM_dd( Integer.parseInt(DateTime.yyyy()), Integer.parseInt(DateTime.MM()), Integer.parseInt(DateTime.dd())) ; List res = this.sv.selectEt0(ymd) ; return BaseResponseUtils.buildSuccess(res); } catch (Exception e) { log.error("查询所有作物的昨日蒸腾量异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 根据指定条件作物查询一段时间内的蒸腾量 * @param qo * @return */ @GetMapping(path = "oneCropsSomeEt0") @SsoAop() public BaseResponse> oneCropsSomeEt0(VaporQo qo){ try { if(qo.cropId == null){ return BaseResponseUtils.buildFail("作物id不能为空") ; } if(qo.timeStop == null || qo.timeStop.trim().equals("")){ qo.timeStop = DateTime.yyyy_MM_dd() ; } if(qo.timeStart == null || qo.timeStart.trim().equals("")){ qo.timeStart = DateTime.lastXDay_yyyy_MM_dd(qo.timeStop, 10); } List list = sv.oneCropsSomeEt0(qo) ; if(list == null){ list = new ArrayList<>() ; } return BaseResponseUtils.buildSuccess(list); } catch (Exception e) { return BaseResponseUtils.buildException(e.getMessage()) ; } } }