# OooRoomInternalController.java

    package cloud.wconnect.frontoffice.controller.oooroom.internal;

    import cloud.wconnect.commonlib.controller.BaseInternalController;
    import cloud.wconnect.frontoffice.pojo.dto.oooroom.internal.OooRoomCountInternalDTO;
    import cloud.wconnect.frontoffice.service.oooroom.internal.IOooRoomInternalService;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.web.bind.annotation.*;

    import jakarta.annotation.Resource;
    import java.util.List;

    /**
     * Internal
     *
     * @author zc
     * @date 2024/10/20
     */
    @Slf4j
    @RestController
    @RequestMapping("/internal/ooo-room")
    public class OooRoomInternalController extends BaseInternalController {
        @Resource
        private IOooRoomInternalService oooRoomInternalService;
        @Value("${internal.service.auth-key.basic}")
        private String basicDataAuthKey;

        /**
         * 获取指定日期未完成的 OOO 房间数量
         *
         * @param sign 签名
         * @param propertyId 资产 id
         * @param startDate  开始日期(yyyyMMdd)
         * @param endDate    结束日期(yyyyMMdd)
         * @return OooRoomCountInternalDTO 集合
         * @author zc
         * @date 2024/10/20
         */
        @GetMapping("/count")
        public List<OooRoomCountInternalDTO> listOooRoomCount(@RequestHeader String sign, @RequestParam int propertyId,
                                                              @RequestParam long startDate, @RequestParam long endDate) {
            // 校验参数签名
            checkIntranetParams(basicDataAuthKey, sign, propertyId, startDate, endDate);
            return oooRoomInternalService.list(propertyId, startDate, endDate);
        }
    }