package org.dromara.${module}.${submodule}.dubbo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; import org.dromara.${module}.api.Remote${ClassName}Service; import org.dromara.${module}.api.domain.dto.Remote${ClassName}Dto; import org.dromara.${module}.api.domain.dto.Remote${ClassName}QueryDto; import org.dromara.${module}.${submodule}.domain.bo.${ClassName}Bo; import org.dromara.${module}.${submodule}.domain.vo.${ClassName}Vo; import org.dromara.${module}.${submodule}.service.I${ClassName}Service; import org.dromara.common.core.domain.R; import org.dromara.common.core.utils.MapstructUtils; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.springframework.stereotype.Service; import java.util.List; /** * ${tableComment}远程服务实现 * * @author ${author} * @date ${date} */ @Slf4j @RequiredArgsConstructor @Service @DubboService public class Remote${ClassName}ServiceImpl implements Remote${ClassName}Service { private final I${ClassName}Service ${className}Service; /** * 根据ID查询${tableComment} */ @Override public R select${ClassName}ById(${pkType} ${pkField}) { ${ClassName}Vo vo = ${className}Service.queryById(${pkField}); if (vo == null) { return R.fail("${tableComment}不存在"); } return R.ok(MapstructUtils.convert(vo, Remote${ClassName}Dto.class)); } /** * 查询${tableComment}列表(不分页) */ @Override public List select${ClassName}List(Remote${ClassName}QueryDto queryDto) { ${ClassName}Bo bo = new ${ClassName}Bo(); // 设置查询条件 List<${ClassName}Vo> voList = ${className}Service.queryList(bo); return MapstructUtils.convert(voList, Remote${ClassName}Dto.class); } /** * 分页查询${tableComment}列表 */ @Override public TableDataInfo select${ClassName}Page(Remote${ClassName}QueryDto queryDto) { // 1. 构建分页参数 PageQuery pageQuery = new PageQuery(); pageQuery.setPageNum(queryDto.getPageNum() != null ? Math.max(queryDto.getPageNum(), 1) : 1); pageQuery.setPageSize(queryDto.getPageSize() != null ? Math.min(Math.max(queryDto.getPageSize(), 1), 500) : 10); // 2. 构建查询条件 ${ClassName}Bo bo = new ${ClassName}Bo(); // TODO: 设置查询条件 // 3. 执行查询 TableDataInfo<${ClassName}Vo> result = ${className}Service.queryPageList(bo, pageQuery); // 4. 转换结果 List dtoList = MapstructUtils.convert(result.getRows(), Remote${ClassName}Dto.class); // 5. 构建返回 TableDataInfo pageData = TableDataInfo.build(); pageData.setRows(dtoList); pageData.setTotal(result.getTotal()); return pageData; } /** * 新增${tableComment} */ @Override public R insert${ClassName}(Remote${ClassName}Dto dto) { ${ClassName}Bo bo = MapstructUtils.convert(dto, ${ClassName}Bo.class); ${className}Service.insertByBo(bo); return R.ok(); } /** * 修改${tableComment} */ @Override public R update${ClassName}(Remote${ClassName}Dto dto) { ${ClassName}Bo bo = MapstructUtils.convert(dto, ${ClassName}Bo.class); ${className}Service.updateByBo(bo); return R.ok(); } /** * 删除${tableComment} */ @Override public R delete${ClassName}ByIds(${pkType}[] ids) { ${className}Service.deleteWithValidByIds(List.of(ids), false); return R.ok(); } }