package com.yuchen.saas.park.service.service.property;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.yuchen.saas.park.api.dto.property.NewHouseReq;
import com.yuchen.saas.park.api.dto.property.PropertyMoveInBatchDto;
import com.yuchen.saas.park.api.dto.property.PropertyMoveInRegisterQryDto;
import com.yuchen.saas.park.api.entity.property.PropertyMoveInRegister;
import com.yuchen.saas.park.api.vo.property.PropertyMoveInRegisterListVo;
import com.yuchen.saas.park.api.vo.property.PropertyMoveInRegisterVo;
import org.nest.springwrap.core.tool.api.R;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;

/**
 * <p>
 * 入住登记表 服务类
 * </p>
 *
 * @author 洪铭铭
 * @since 2024-11-29
 */
public interface IPropertyMoveInRegisterService extends IService<PropertyMoveInRegister> {

    Page<PropertyMoveInRegister> selectPage(PropertyMoveInRegisterQryDto qryDto);

    Boolean addBatch(PropertyMoveInBatchDto batchDto);

    R confirm(NewHouseReq newHouseReq);

    R confirmNoApprove(NewHouseReq newHouseReq);

    R<PropertyMoveInRegisterVo> detail(@RequestParam("roomId") Long roomId);

    R<List<PropertyMoveInRegisterListVo>> list(@RequestBody PropertyMoveInRegisterQryDto qryDto);

}
