/*
 * Author: wangjian
 * 生成Service
 */
package com.tofly.xrtymis.custom.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tofly.common.core.entity.ResultRespone;
import com.tofly.xrtymis.custom.dto.TfYwpnWaterRepDTO;
import com.tofly.xrtymis.custom.vo.TfYwpnWatermeterVO;
import com.tofly.xrtymis.entity.TfYwpnWaterRep;
import com.tofly.xrtymis.entity.TfYwpnWatermeter;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * 水表信息采集数据表：TF_YWPN _WATERMETER_W
 *
 * @author fcl
 * @date Fri Apr 16 00:00:00 CST 2021
 */
public interface TfYwpnWatermeterService extends IService<TfYwpnWatermeter> {

    /**
     * 新增水表采集代表点信息采集数据表：TF_YWPN_WATERREP_W
     * @param rep 水表采集代表点信息
     * @return
     */
    ResultRespone saveInformation(TfYwpnWaterRep rep);
//    ResultRespone saveInformation(TfYwpnatermeter tfYwpnatermeter);

    /**
     * 根据水表编号 生成RFID
     * @param sid 水表编号
     * @param sbcjName 水表厂家名称
     * @param yhbh 客户编号
     * @return RFID
     */
    String getRFID(String sid, String sbcjName,String yhbh);

    /**
     * 水表标定
     * @param tfYwpnWatermeter 水表采集信息
     * @return
     */
    ResultRespone calibration(TfYwpnWatermeter tfYwpnWatermeter);

    /**
     * 修改水表采集代表点信息采集数据表：TF_YWPN_WATERREP_W
     * @param fileList 上传图片
     * @param repDTO 水表采集代表点信息、水表集合
     * @return
     */
    ResultRespone updateWaterMater(List<MultipartFile> fileList, TfYwpnWaterRepDTO repDTO);

    /**
     * 删除水表
     * @param id 主键id
     * @return
     */
    ResultRespone removeRepById(Long id);

    /**
     * 通过id查询水表采集代表点信息数据表：TF_YWPN TF_YWPN_WATERREP_W
     * @param id id
     * @return ResultRespone
     */
    ResultRespone getWaterRepById(Long id);

    /**
     * 根据RFID获取水表信息
     * @param rfid 水表RFID
     * @return RFID
     */
    ResultRespone getWaterMeterInfoByRFID(String rfid);

    TfYwpnWatermeterVO watermMter2VO(TfYwpnWatermeter watermeter);

}
