HolidayServiceImpl.java 3.28 KB
package com.zteits.bill.biz.holiday;

import java.util.ArrayList;
import java.util.List;

import org.apache.commons.lang3.StringUtils;
import com.zteits.bill.dao.holiday.HolidayDao;
import com.zteits.bill.domain.TSpHolidays;
import com.zteits.clouds.api.apibase.bean.BizResult;
import com.zteits.clouds.api.apibase.constants.ErrorType;
import com.zteits.clouds.api.apibase.exception.BizException;
import com.zteits.clouds.api.dto.bill.holiday.dto.SpHolidaysDTO;
import com.zteits.clouds.api.dto.bill.holiday.param.DaysInfoQueryReq;
import com.zteits.clouds.api.dto.bill.holiday.param.HoildaysInitReq;
import com.zteits.clouds.api.dto.bill.holiday.param.HolidaysInfoQueryReq;
import com.zteits.clouds.api.service.bill.holiday.HolidayService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @ClassName: com.zteits.billing.biz.holiday
 * @Description:
 * @version: v1.0.0
 * @author: atao
 * @date: 2017/11/3   上午10:15
 * Modification History:
 * Date         Author          Version      Description
 * ---------------------------------------------------------*
 * 2017/11/3      atao          v1.0.0          创建
 */
@Component
public class HolidayServiceImpl implements HolidayService {
    @Autowired
    private HolidayDao holidayDao;

    @Override
    public BizResult<List<SpHolidaysDTO>> queryDaysInfoOfSolar(DaysInfoQueryReq req) {

        List<SpHolidaysDTO> dtoList = new ArrayList<>();

        if (CollectionUtils.isEmpty(req.getQueryDates())) {
            throw new BizException(ErrorType.PARAMM_NULL, "查询日期");
        }

        List<TSpHolidays> holidays = holidayDao.queryDaysInfoOfSolar(req);
        for (TSpHolidays day : holidays) {
            SpHolidaysDTO dto = new SpHolidaysDTO();
            BeanUtils.copyProperties(day, dto);
            dtoList.add(dto);
        }

        return new BizResult<>(dtoList);
    }

    @Override
    public BizResult<List<SpHolidaysDTO>> queryDaysInfoOfLunar(DaysInfoQueryReq req) {
        List<SpHolidaysDTO> dtoList = new ArrayList<>();

        if (CollectionUtils.isEmpty(req.getQueryDates())) {
            throw new BizException(ErrorType.PARAMM_NULL, "查询日期");
        }

        List<TSpHolidays> holidays = holidayDao.queryDaysInfoOfLunar(req);
        for (TSpHolidays day : holidays) {
            SpHolidaysDTO dto = new SpHolidaysDTO();
            BeanUtils.copyProperties(day, dto);
            dtoList.add(dto);
        }

        return new BizResult<>(dtoList);
    }

    @Override
    public BizResult<List<SpHolidaysDTO>> queryHolidaysInfoByYear(HolidaysInfoQueryReq req) {
        if (StringUtils.isBlank(req.getYear())) {
            throw new BizException(ErrorType.PARAMM_NULL, "年份信息");
        }

        List<SpHolidaysDTO> holidays = holidayDao.queryHolidaysInfoByYear(req);

        return new BizResult<>(holidays);
    }

    @Override
    public BizResult<Integer> initHoildays(HoildaysInitReq req) {
        if (null == req.getYearDate()) {
            throw new BizException(ErrorType.PARAMM_NULL, "年份日期");
        }

        Integer num = holidayDao.initHoildays(req);

        return new BizResult<>(num);
    }
}