All Downloads are FREE. Search and download functionalities are using the official Maven repository.

vm.java.ServiceImpl.vm Maven / Gradle / Ivy

package ${packageName}.${moduleName}.service.impl;

import com.beli.common.services.BaseServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.springframework.stereotype.Service;
import tk.mybatis.mapper.entity.Example;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import com.beli.common.pojos.vo.PageQueryVO;
import com.beli.common.pojos.vo.PageResultVO;
import ${packageName}.${moduleName}.dao.${ClassName}DAO;
import ${packageName}.${moduleName}.bo.${ClassName}BO;
import ${packageName}.${moduleName}.po.${ClassName}PO;
import ${packageName}.${moduleName}.service.I${ClassName}Service;

/**
 * ${functionName}
 *
 * @author ${author}
 * @date ${datetime}
 */
@Service("${ClassName}Service")
public class ${ClassName}ServiceImpl extends BaseServiceImpl<${ClassName}DAO,${ClassName}PO> implements I${ClassName}Service {

    private Example createExample(PageQueryVO queryVO){
        Example example=new Example(${ClassName}PO.class);
        Example.Criteria criteria= example.createCriteria();
#foreach($column in $columns)
#set($queryType=$column.queryType)
#set($javaField=$column.javaField)
#set($javaType=$column.javaType)
#set($columnName=$column.columnName)
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
#if($column.query)
#if($column.queryType == "EQ")
         if (queryVO.get("$javaField")!=null){
             criteria.andEqualTo("$javaField",queryVO.get("$javaField"));
         }
#elseif($queryType == "NE")
         if (queryVO.get("$javaField")!=null){
            criteria.andNotEqualTo("$javaField",queryVO.get("$javaField"));
         }
#elseif($queryType == "GT")
        if (queryVO.get("$javaField")!=null){
            criteria.andGreaterThan("$javaField",queryVO.get("$javaField"));
        }
#elseif($queryType == "GTE")
        if (queryVO.get("$javaField")!=null){
            criteria.andGreaterThanOrEqualTo("$javaField",queryVO.get("$javaField"));
        }
#elseif($queryType == "LT")
        if (queryVO.get("$javaField")!=null){
            criteria.andLessThan("$javaField",queryVO.get("$javaField"));
        }
#elseif($queryType == "LTE")
        if (queryVO.get("$javaField")!=null){
            criteria.andLessThanOrEqualTo("$javaField",queryVO.get("$javaField"));
        }
#elseif($queryType == "LIKE")
        if (StringUtils.isNotBlank((String)queryVO.get("$javaField"))){
            criteria.andLike("$javaField","%"+StringUtils.lowerCase((String) queryVO.get("$javaField"))+"%");
        }
#elseif($queryType == "BETWEEN")
##                     and $columnName between #{params.begin$AttrName} and #{params.end$AttrName}
#end
#end
#end
        return example;
    }

	@Override
	public List<${ClassName}BO> queryList(PageQueryVO queryVO){
        Example example=createExample(queryVO);
        List<${ClassName}PO> poList= PageHelper.startPage(queryVO.getPage(),queryVO.getLimit()).doSelectPage(()->dao.selectByExample(example));
        return toBOList(poList);
	}

    @Override
    public PageResultVO queryPageList(PageQueryVO queryVO){
        Example example=createExample(queryVO);
        List<${ClassName}PO> poList= PageHelper.startPage(queryVO.getPage(),queryVO.getLimit()).doSelectPage(()->dao.selectByExample(example));
        PageInfo<${ClassName}PO> page = new PageInfo(poList);
        return new PageResultVO(toBOList(poList), page.getTotal(), queryVO.getLimit(), queryVO.getPage());
    }

#if($tplCategory == "activiti")
    @Override
     public  ${ClassName}BO get${ClassName}InfoByInstanceId(String processInstanceId){
        Example example=new Example(${ClassName}PO.class);
        example.createCriteria().andEqualTo("processInstanceId",processInstanceId);
        ${ClassName}PO po=(${ClassName}PO)dao.selectOneByExample(example);
        return po==null?null:(${ClassName}BO)po.toBO();
     }
#end
 }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy