package com.dy.pipIrrWechat.intake; 
 | 
  
 | 
import com.dy.common.webUtil.BaseResponse; 
 | 
import com.dy.common.webUtil.BaseResponseUtils; 
 | 
import com.dy.common.webUtil.QueryResultVo; 
 | 
import com.dy.pipIrrGlobal.voPr.VoAllIntake; 
 | 
import com.dy.pipIrrGlobal.voPr.VoOnLineIntake; 
 | 
import com.dy.pipIrrGlobal.voRm.VoOpenClostWechat; 
 | 
import com.dy.pipIrrWechat.intake.qo.OnLineIntakesQO; 
 | 
import com.dy.pipIrrWechat.intake.qo.QoOpenClose; 
 | 
import io.swagger.v3.oas.annotations.tags.Tag; 
 | 
import lombok.RequiredArgsConstructor; 
 | 
import lombok.extern.slf4j.Slf4j; 
 | 
import org.springframework.web.bind.annotation.GetMapping; 
 | 
import org.springframework.web.bind.annotation.RequestMapping; 
 | 
import org.springframework.web.bind.annotation.RestController; 
 | 
  
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * @author ZhuBaoMin 
 | 
 * @date 2024-06-20 8:37 
 | 
 * @LastEditTime 2024-06-20 8:37 
 | 
 * @Description 
 | 
 */ 
 | 
  
 | 
@Slf4j 
 | 
@Tag(name = "取水口数据操作", description = "取水口数据操作") 
 | 
@RestController 
 | 
@RequestMapping(path="intake") 
 | 
@RequiredArgsConstructor 
 | 
public class IntakeCtrl { 
 | 
    private final IntakeSv intakeSv; 
 | 
  
 | 
    /** 
 | 
     * 根据取水口编号获取取水口对象 
 | 
     * @param qo 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "all_intakes") 
 | 
    public BaseResponse<QueryResultVo<List<VoOnLineIntake>>> getSomeIntakes(OnLineIntakesQO qo) { 
 | 
        try { 
 | 
            return BaseResponseUtils.buildSuccess(intakeSv.selectSomeIntakes(qo)); 
 | 
        } catch (Exception e) { 
 | 
            log.error("查询取水口异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
  
 | 
    /** 
 | 
     * 根据取水口编号获取取水口对象 
 | 
     * @param qo 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "all_intakes1") 
 | 
    public BaseResponse<QueryResultVo<VoOnLineIntake>> getOneIntake(OnLineIntakesQO qo) { 
 | 
        try { 
 | 
            return BaseResponseUtils.buildSuccess(intakeSv.selectOneIntake(qo)); 
 | 
        } catch (Exception e) { 
 | 
            log.error("查询取水口异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 获取取水口列表(在线和不在线) 
 | 
     * @param qo 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "all_intakes2") 
 | 
    public BaseResponse<QueryResultVo<List<VoOnLineIntake>>> getAllIntakes(OnLineIntakesQO qo) { 
 | 
        try { 
 | 
            return BaseResponseUtils.buildSuccess(intakeSv.selectAllIntakes(qo)); 
 | 
        } catch (Exception e) { 
 | 
            log.error("查询取水口异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 根据操作员获取常用取水口(在线和不在线) 
 | 
     * @param operatorId 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "used_intakes") 
 | 
    public BaseResponse<List<VoOnLineIntake>> getUsedIntakes(Long operatorId) { 
 | 
        if(operatorId == null || operatorId <= 0) { 
 | 
            return BaseResponseUtils.buildErrorMsg("操作员不能为空"); 
 | 
        } 
 | 
  
 | 
        try { 
 | 
            List<VoOnLineIntake> res = intakeSv.getUsedIntakes(operatorId); 
 | 
            return BaseResponseUtils.buildSuccess(res); 
 | 
        } catch (Exception e) { 
 | 
            log.error("查询取水口异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 获取物理卡开关阀记录,微信小程序使用 
 | 
     * @param qo 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "/getCardOpenClose") 
 | 
    public BaseResponse<QueryResultVo<List<VoOpenClostWechat>>> getCardOpenClose(QoOpenClose qo) { 
 | 
        try { 
 | 
            QueryResultVo<List<VoOpenClostWechat>> res = intakeSv.getCardOpenClose(qo); 
 | 
            return BaseResponseUtils.buildSuccess(res); 
 | 
        } catch (Exception e) { 
 | 
            log.error("获取水卡开关阀记录异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 获取虚拟卡开关阀记录,微信小程序使用 
 | 
     * @param qo 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "/getVcCardOpenClose") 
 | 
    public BaseResponse<QueryResultVo<List<VoOpenClostWechat>>> getVcCardOpenClose(QoOpenClose qo) { 
 | 
        try { 
 | 
            QueryResultVo<List<VoOpenClostWechat>> res = intakeSv.getVcCardOpenClose(qo); 
 | 
            return BaseResponseUtils.buildSuccess(res); 
 | 
        } catch (Exception e) { 
 | 
            log.error("获取虚拟卡开关阀记录异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
  
 | 
    /** 
 | 
     * 获得全部取水口 
 | 
     * @return 
 | 
     */ 
 | 
    @GetMapping(path = "all") 
 | 
    public BaseResponse<QueryResultVo<List<VoAllIntake>>> all() { 
 | 
        try { 
 | 
            QueryResultVo<List<VoAllIntake>> res = this.intakeSv.selectAll(); 
 | 
            if (res == null) { 
 | 
                return BaseResponseUtils.buildErrorMsg("没有符合条件的取水口数据"); 
 | 
            } else { 
 | 
                return BaseResponseUtils.buildSuccess(res); 
 | 
            } 
 | 
        } catch (Exception e) { 
 | 
            log.error("查询取水口异常", e); 
 | 
            return BaseResponseUtils.buildException(e.getMessage()); 
 | 
        } 
 | 
    } 
 | 
} 
 |