liusheng
2026-01-21 29f287cf6e4869d7bbc283991458e09a03b59c52
ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm
@@ -25,23 +25,129 @@
/**
 * ${functionName}Service业务层处理
 *
 *
 * @author ${author}
 * @date ${datetime}
 */
@Service
public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service
public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service
{
    @Autowired
    private ${ClassName}Mapper ${className}Mapper;
    /**
     * 查询${functionName}列表
     *
     *
     * @param ${className} ${functionName}
     * @return ${functionName}
     */
    @Override
    public List<${ClassName}> queryList(${ClassName} ${className}) {
    public Page<${ClassName}> queryList(${ClassName} ${className}) {
        LambdaQueryWrapper<${ClassName}> wrappers = Wrappers.lambdaQuery();
        #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($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.eq(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.eq(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "NE")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.ne(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.ne(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "GT")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.gt(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.gt(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "GTE")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.ge(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.ge(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "LT")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.lt(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.lt(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "LTE")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.le(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.le(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "LIKE")
                    #if($javaType == 'String')
                        if (StringUtils.isNotBlank(${className}.get$AttrName())){
                        wrappers.like(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #else
                        if (${className}.get$AttrName() != null){
                        wrappers.like(${ClassName}::get$AttrName ,${className}.get$AttrName());
                    }
                    #end
                #elseif($queryType == "BETWEEN")
                    Map<String, Object> params = ${className}.getParams();
                    if (params.get("begin$AttrName") != null && params.get("end$AttrName") != null) {
                        wrappers.between(${ClassName}::get$AttrName ,params.get("begin$AttrName"),params.get("end$AttrName"));
                    }
                #end
            #end
        #end
        int currentPage = (${className}.getPageNum() == null || ${className}.getPageNum() < 1) ? 1 : ${className}.getPageNum();
        int size = (${className}.getPageSize() == null || ${className}.getPageSize() < 1) ? 10 : ${className}.getPageSize();
        Page<${ClassName}> page = new Page<>(currentPage, size);
        List<${ClassName}> ${className}List = ${className}Mapper.selectPage(page, wrappers).getRecords();
        return  page.setRecords(${className}List);
    }
    /**
     * 查询${functionName}列表
     *
     * @param ${className} ${functionName}
     * @return ${functionName}
     */
    @Override
    public List<${ClassName}> exportQueryList(${ClassName} ${className}) {
        LambdaQueryWrapper<${ClassName}> wrappers = Wrappers.lambdaQuery();
#foreach($column in $columns)
#set($queryType=$column.queryType)