From f093da99ecb963d19d62dc0f242f00b20bc8895c Mon Sep 17 00:00:00 2001 From: 疯狂的狮子li <15040126243@163.com> Date: 星期三, 14 四月 2021 13:22:31 +0800 Subject: [PATCH] Merge branch 'master' of https://gitee.com/y_project/RuoYi-Vue into dev --- ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm | 228 +++++++++++++++++++++++++++++--------------------------- 1 files changed, 119 insertions(+), 109 deletions(-) diff --git a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm index 05a3de8..cbf9d32 100644 --- a/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm +++ b/ruoyi-generator/src/main/resources/vm/java/serviceImpl.java.vm @@ -1,109 +1,119 @@ -package ${packageName}.service.impl; - -import java.util.List; -#foreach ($column in $columns) -#if($column.javaField == 'createTime' || $column.javaField == 'updateTime') -import com.ruoyi.common.utils.DateUtils; -#break -#end -#end -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; -import ${packageName}.mapper.${ClassName}Mapper; -import ${packageName}.domain.${ClassName}; -import ${packageName}.service.I${ClassName}Service; - -/** - * ${functionName}Service涓氬姟灞傚鐞� - * - * @author ${author} - * @date ${datetime} - */ -@Service -public class ${ClassName}ServiceImpl implements I${ClassName}Service -{ - @Autowired - private ${ClassName}Mapper ${className}Mapper; - - /** - * 鏌ヨ${functionName} - * - * @param ${pkColumn.javaField} ${functionName}ID - * @return ${functionName} - */ - @Override - public ${ClassName} select${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}) - { - return ${className}Mapper.select${ClassName}ById(${pkColumn.javaField}); - } - - /** - * 鏌ヨ${functionName}鍒楄〃 - * - * @param ${className} ${functionName} - * @return ${functionName} - */ - @Override - public List<${ClassName}> select${ClassName}List(${ClassName} ${className}) - { - return ${className}Mapper.select${ClassName}List(${className}); - } - - /** - * 鏂板${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - @Override - public int insert${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'createTime') - ${className}.setCreateTime(DateUtils.getNowDate()); -#end -#end - return ${className}Mapper.insert${ClassName}(${className}); - } - - /** - * 淇敼${functionName} - * - * @param ${className} ${functionName} - * @return 缁撴灉 - */ - @Override - public int update${ClassName}(${ClassName} ${className}) - { -#foreach ($column in $columns) -#if($column.javaField == 'updateTime') - ${className}.setUpdateTime(DateUtils.getNowDate()); -#end -#end - return ${className}Mapper.update${ClassName}(${className}); - } - - /** - * 鎵归噺鍒犻櫎${functionName} - * - * @param ${pkColumn.javaField}s 闇�瑕佸垹闄ょ殑${functionName}ID - * @return 缁撴灉 - */ - @Override - public int delete${ClassName}ByIds(${pkColumn.javaType}[] ${pkColumn.javaField}s) - { - return ${className}Mapper.delete${ClassName}ByIds(${pkColumn.javaField}s); - } - - /** - * 鍒犻櫎${functionName}淇℃伅 - * - * @param ${pkColumn.javaField} ${functionName}ID - * @return 缁撴灉 - */ - @Override - public int delete${ClassName}ById(${pkColumn.javaType} ${pkColumn.javaField}) - { - return ${className}Mapper.delete${ClassName}ById(${pkColumn.javaField}); - } -} +package ${packageName}.service.impl; + +import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.util.StrUtil; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.github.pagehelper.Page; +import ${packageName}.bo.${ClassName}AddBo; +import ${packageName}.bo.${ClassName}QueryBo; +import ${packageName}.bo.${ClassName}EditBo; +import ${packageName}.domain.${ClassName}; +import ${packageName}.mapper.${ClassName}Mapper; +import ${packageName}.vo.${ClassName}Vo; +import ${packageName}.service.I${ClassName}Service; + +import java.util.Collection; +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + +/** + * ${functionName}Service涓氬姟灞傚鐞� + * + * @author ${author} + * @date ${datetime} + */ +@Service +public class ${ClassName}ServiceImpl extends ServiceImpl<${ClassName}Mapper, ${ClassName}> implements I${ClassName}Service { + + @Override + public ${ClassName}Vo queryById(${pkColumn.javaType} ${pkColumn.javaField}){ + ${ClassName} db = this.baseMapper.selectById(${pkColumn.javaField}); + return BeanUtil.toBean(db, ${ClassName}Vo.class); + } + + @Override + public List<${ClassName}Vo> queryList(${ClassName}QueryBo bo) { + LambdaQueryWrapper<${ClassName}> lqw = Wrappers.lambdaQuery(); +#foreach($column in $columns) +#if($column.query) +#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)}) +#set($mpMethod=$column.queryType.toLowerCase()) +#if($queryType != 'BETWEEN') +#if($javaType == 'String') +#set($condition='StrUtil.isNotBlank(bo.get'+$AttrName+'())') +#else +#set($condition='bo.get'+$AttrName+'() != null') +#end + lqw.$mpMethod($condition, ${ClassName}::get$AttrName, bo.get$AttrName()); +#else + Object dataScope = bo.getParams().get("dataScope"); + lqw.apply(dataScope != null, dataScope != null ? dataScope.toString() : null); + Map<String, Object> params = bo.getParams(); + if (params.get("begin$AttrName") != null && params.get("end$AttrName") != null) { + lqw.between(${ClassName}::get$AttrName ,params.get("begin$AttrName"), params.get("end$AttrName")); + } +#end +#end +#end + return entity2Vo(this.list(lqw)); + } + + /** + * 瀹炰綋绫昏浆鍖栨垚瑙嗗浘瀵硅薄 + * + * @param collection 瀹炰綋绫婚泦鍚� + * @return + */ + private List<${ClassName}Vo> entity2Vo(Collection<${ClassName}> collection) { + List<${ClassName}Vo> voList = collection.stream() + .map(any -> BeanUtil.toBean(any, ${ClassName}Vo.class)) + .collect(Collectors.toList()); + if (collection instanceof Page) { + Page<${ClassName}> page = (Page<${ClassName}>)collection; + Page<${ClassName}Vo> pageVo = new Page<>(); + BeanUtil.copyProperties(page,pageVo); + pageVo.addAll(voList); + voList = pageVo; + } + return voList; + } + + @Override + public Boolean insertByAddBo(${ClassName}AddBo bo) { + ${ClassName} add = BeanUtil.toBean(bo, ${ClassName}.class); + validEntityBeforeSave(add); + return this.save(add); + } + + @Override + public Boolean updateByEditBo(${ClassName}EditBo bo) { + ${ClassName} update = BeanUtil.toBean(bo, ${ClassName}.class); + validEntityBeforeSave(update); + return this.updateById(update); + } + + /** + * 淇濆瓨鍓嶇殑鏁版嵁鏍¢獙 + * + * @param entity 瀹炰綋绫绘暟鎹� + */ + private void validEntityBeforeSave(${ClassName} entity){ + //TODO 鍋氫竴浜涙暟鎹牎楠�,濡傚敮涓�绾︽潫 + } + + @Override + public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) { + if(isValid){ + //TODO 鍋氫竴浜涗笟鍔′笂鐨勬牎楠�,鍒ゆ柇鏄惁闇�瑕佹牎楠� + } + return this.removeByIds(ids); + } +} -- Gitblit v1.9.3