SitesServiceImpl.java 4.67 KB
package com.cnlive.shenhe.serviceImpl;

import com.alibaba.fastjson.JSON;
import com.cnlive.shenhe.dto.SitesDTO;
import com.cnlive.shenhe.entity.ShySites;
import com.cnlive.shenhe.entity.ShyUsers;
import com.cnlive.shenhe.mapper.ShySitesMapper;
import com.cnlive.shenhe.utils.CommonUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;

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


/**
 * @Auther: 周伟鹏
 * @Date: 2018/11/29 14:23
 * @Description:
 */
@Service
public class SitesServiceImpl {
    private static Logger logger = LoggerFactory.getLogger(SitesServiceImpl.class);
    @Autowired
    ShySitesMapper shySitesMapper;
    @Autowired
    UsersServiceImpl usersService;

    public PageInfo<ShySites> getPage(SitesDTO sitesDTO) {
        logger.info("接受参数列表为,SitesDTO:{}", JSON.toJSONString(sitesDTO));
        Example example = new Example(ShySites.class);
        Example.Criteria criteria = example.createCriteria();
        Example.Criteria criteria2 = example.createCriteria();
        if (CommonUtils.isNotEmpty(sitesDTO.getOrderByClause())) {
            example.setOrderByClause(sitesDTO.getOrderByClause());
        }
        if (CommonUtils.isNotEmpty(sitesDTO.getKeyword())) {
            criteria.andLike("name", "%" + sitesDTO.getKeyword() + "%");
            criteria2.andLike("spid",  "%" + sitesDTO.getKeyword() + "%");
            example.or(criteria2);
        }
        if (CommonUtils.isNotNull(sitesDTO.getSpId())) {
            criteria.andEqualTo("spid", sitesDTO.getSpId());
            criteria2.andEqualTo("spid", sitesDTO.getSpId());
        }
        PageHelper.startPage(sitesDTO.getPage(), sitesDTO.getPageSize(), true);
        List<ShySites> shySitesList = shySitesMapper.selectByExample(example);
        PageInfo<ShySites> pageInfo = new PageInfo<ShySites>(shySitesList);
        return pageInfo;
    }


    public ShySites get(Integer siteId) {
        return shySitesMapper.selectByPrimaryKey(siteId);
    }

    public boolean update(ShySites site) {
        return shySitesMapper.updateByPrimaryKeySelective(site) == 1;
    }

    public List<ShySites> findAll() {
        List<ShySites> shySites = shySitesMapper.selectAll();
        return shySites;
    }

    public ShySites findspidDescByspid(int spId) {
        Example example = new Example(ShySites.class);
        Example.Criteria criteria = example.createCriteria();
        if (CommonUtils.isNotNull(spId)) {
            criteria.andEqualTo("spid", spId);
        }
        List<ShySites> shySites = shySitesMapper.selectByExample(example);
        if(CommonUtils.isNotNull(shySites)&&shySites.size()>0){
        	return shySites.get(0);
        }
        return null;
    }

    public ShySites findspidBySpdesc(String sp_desc) {
        Example example = new Example(ShySites.class);
        Example.Criteria criteria = example.createCriteria();
        if (CommonUtils.isNotEmpty(sp_desc)) {
            criteria.andEqualTo("name", sp_desc);
        }
        List<ShySites> shySites = shySitesMapper.selectByExample(example);
        if(CommonUtils.isNotNull(shySites)&&shySites.size()>0){
        	return shySites.get(0);
        }
        return null;
    }
    /**
     * 获取免审白名单列表(点播)
     * @return
     */
    public List<Integer> getBusinessList(Integer business_) {
        List<ShySites> sitesList = shySitesMapper.selectAll();
        List<Integer> sites = new ArrayList<Integer>();
        for (ShySites shySites : sitesList) {
            if (CommonUtils.isNotEmpty(shySites.getWrite_business())) {
                String[] business = shySites.getWrite_business().split(",");
                List<String> asList = Arrays.asList(business);
                if (asList.contains(business_ + "")) {
                    sites.add(shySites.getSpid());
                }
            }
        }
        return sites;
    }
    
    public String getUpdater(String updater,String auditor_id){
    	
        if (CommonUtils.isNotEmpty(auditor_id)) {
            ShyUsers user = new ShyUsers();
            user.setUser_id(auditor_id);
            user = usersService.select(user);
            if (CommonUtils.isNotNull(user)) {
            	String email = CommonUtils.isEmpty(user.getEmail()) || "null".equals(user.getEmail()) ? "" : user.getEmail();
                String userName = CommonUtils.isEmpty(user.getUsername()) ? email : user.getUsername();
                updater = userName ;
            }
        }
    	return updater;
    }
}