package com.foreverwin.mesnac.equip.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.foreverwin.mesnac.common.enums.HandleEnum;
import com.foreverwin.mesnac.common.util.StringUtil;
import com.foreverwin.mesnac.equip.mapper.EquipTypeEquipMapper;
import com.foreverwin.mesnac.equip.model.EquipTypeEquip;
import com.foreverwin.mesnac.equip.service.EquipTypeEquipService;
import com.foreverwin.mesnac.equip.util.ConstantUtil;
import com.foreverwin.modular.core.util.FrontPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * <p>
 *  服务实现类
 * </p>
 *
 * @author Max
 * @since 2020-10-10
 */
@Service
@Transactional(rollbackFor = Exception.class)
public class EquipTypeEquipServiceImpl extends ServiceImpl<EquipTypeEquipMapper, EquipTypeEquip> implements EquipTypeEquipService {


    @Autowired
    private EquipTypeEquipMapper equipTypeEquipMapper;

    @Override
    public IPage<EquipTypeEquip> selectPage(FrontPage<EquipTypeEquip> frontPage, EquipTypeEquip equipTypeEquip) {
        QueryWrapper<EquipTypeEquip> queryWrapper = new QueryWrapper<>();
        queryWrapper.setEntity(equipTypeEquip);
        return super.page(frontPage.getPagePlus(), queryWrapper);
    }

    @Override
    public List<EquipTypeEquip> selectList(EquipTypeEquip equipTypeEquip) {
        QueryWrapper<EquipTypeEquip> queryWrapper = new QueryWrapper<>();
        queryWrapper.setEntity(equipTypeEquip);
        return super.list(queryWrapper);
    }

    @Override
    public String selectEquipTypeByEquip( String site,String equip ) {
        //
        String equipBo = HandleEnum.RESOURCE+site+","+equip;
        String equipType = "";
        EquipTypeEquip equipTypeEquip = new EquipTypeEquip();
        equipTypeEquip.setEquipBo( equipBo );
        QueryWrapper<EquipTypeEquip> queryWrapper = new QueryWrapper<>();
        queryWrapper.setEntity( equipTypeEquip );
        equipTypeEquip = super.getOne( queryWrapper );
        if ( equipTypeEquip == null ) {
            return null;
        }
        if ( StringUtil.notEmpty( equipTypeEquip.getEquipTypeBo() ) ) {
            equipType = equipTypeEquip.getEquipTypeBo().split(",")[1];
        }
        return equipType;
    }


}