DutyRosterGroupDaoImpl.java 4.4 KB
package com.zteits.park.dao.impl;

import java.util.Date;
import java.util.List;

import org.apache.commons.collections4.CollectionUtils;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.park.param.dutyroster.DutyRosterGroupQueryReq;
import com.zteits.park.dao.DutyRosterGroupDao;
import com.zteits.park.domain.DutyRosterGroup;
import com.zteits.park.domain.DutyRosterGroupExample;
import com.zteits.park.domain.DutyRosterGroupExample.Criteria;
import com.zteits.park.mapper.DutyRosterGroupMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @ClassName: DutyRosterGroupDaoImpl.java
 * @Description:
 * @version: v1.0.0
 * @author: wangfei
 * @date: 2018年8月20日   上午9:41:18
 * Modification History:
 * Date         Author          Version      Description
 * ---------------------------------------------------------*
 * 2018年8月20日      wangfei          v1.0.0          创建
 */
@Component
public class DutyRosterGroupDaoImpl implements DutyRosterGroupDao {
    @Autowired
    private DutyRosterGroupMapper dutyRosterGroupMapper;

    @Override
    public Integer saveDutyRosterGroup(DutyRosterGroup dutyRosterGroup) {

        return dutyRosterGroupMapper.insertSelective(dutyRosterGroup);
    }

    @Override
    public Integer saveDutyRosterGroups(List<DutyRosterGroup> dutyRosterGroups) {
        int num = 0;
        if (CollectionUtils.isNotEmpty(dutyRosterGroups)) {
            for (DutyRosterGroup base : dutyRosterGroups) {
                base.setCreateTime(new Date());
                int i = dutyRosterGroupMapper.insertSelective(base);
                if (i > 0) {
                    num++;
                }
            }
        }

        return num;
    }

    @Override
    public Integer deleteDutyRosterGroup(List<Long> ids, Long opId,Integer dutyType) {
        int num = 0;
        if (CollectionUtils.isNotEmpty(ids)) {
            DutyRosterGroupExample example = new DutyRosterGroupExample();
           Criteria sql =  example.createCriteria().andIdIn(ids);
            if(null != dutyType){
                sql.andDutyTypeEqualTo(dutyType);
            }

            DutyRosterGroup record = new DutyRosterGroup();
            record.setModifyTime(new Date());
            record.setModifyOp(opId);
            record.setDataStatus(DataStatusEnum.DATA_STATUS_NO_VALID.value());
            num = dutyRosterGroupMapper.updateByExampleSelective(record, example);
        }

        return num;
    }

    @Override
    public Integer deleteDutyRosterGroupByOrgIdAndPlanId(Long orgId, Long planId,Integer dutyType) {
        DutyRosterGroupExample example = new DutyRosterGroupExample();
        Criteria sql = example.createCriteria().andOrgIdEqualTo(orgId).andPlanIdEqualTo(planId);
        if (null != dutyType){
            sql.andDutyTypeEqualTo(dutyType);
        }

        return dutyRosterGroupMapper.deleteByExample(example);
    }

    @Override
    public List<DutyRosterGroup> queryDutyRosterGroup(DutyRosterGroupQueryReq req) {

        DutyRosterGroupExample example = new DutyRosterGroupExample();

        //设置查询条件
        Criteria criteria = example.createCriteria();
        if(null == req.getContainNoValidate() ||!req.getContainNoValidate()){
            criteria.andDataStatusEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
        }
        if(null != req.getDutyType()){
            criteria.andDutyTypeEqualTo(req.getDutyType());
        }

        if (null != req.getId()) {
            criteria.andIdEqualTo(req.getId());
        }
        if (null != req.getOrgId()) {
            criteria.andOrgIdEqualTo(req.getOrgId());
        }
        if (null != req.getPlanId()) {
            criteria.andPlanIdEqualTo(req.getPlanId());
        }
        if (null != req.getGroupId()) {
            criteria.andGroupIdEqualTo(req.getGroupId());
        }
        if (CollectionUtils.isNotEmpty(req.getPlanIds())) {
            criteria.andPlanIdIn(req.getPlanIds());
        }
        if (CollectionUtils.isNotEmpty(req.getGroupIds())) {
            criteria.andGroupIdIn(req.getGroupIds());
        }

        return dutyRosterGroupMapper.selectByExample(example);

    }

    @Override
    public Boolean updateDutyRosterGroup(DutyRosterGroup dutyRosterGroup) {
        return dutyRosterGroupMapper.updateByPrimaryKeySelective(dutyRosterGroup) > 0;
    }
}