从表查询主表的数据

从表查询主表的“微信头像”和“微信昵称”数据

1.新建VO.java文件

/**
 * 用户余额变动明细表视图实体类
 *
 * @author BladeX
 * @since 2019-09-04
 */
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "UserBalanceLogVO对象", description = "用户余额变动明细表")
public class WxUserBalanceLogVO extends UserBalanceLog {
	/**
	 * 微信头像
	 */
	@ApiModelProperty(value = "微信头像")
	private String avatarUrl;
	/**
	 * 微信昵称
	 */
	@ApiModelProperty(value = "微信昵称")
	private String nickName;
}

2.在mapper.xml里配置映射文件,写sql语句

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.springblade.modules.shop.shopuser.mapper.UserBalanceLogMapper">
 
    <!-- 在“用户余额变动明细表”中查询“用户记录表”的微信头像,微信昵称-->
    <resultMap id="WxuserbalancelogvoResultMap" type="org.springblade.modules.shop.shopuser.vo.WxUserBalanceLogVO">
        <result column="id" property="id"/>
        <result column="create_user" property="createUser"/>
        <result column="create_dept" property="createDept"/>
        <result column="create_time" property="createTime"/>
        <result column="update_user" property="updateUser"/>
        <result column="update_time" property="updateTime"/>
        <result column="is_deleted" property="isDeleted"/>
        <result column="user_id" property="userId"/>
        <result column="scene" property="scene"/>
        <result column="money" property="money"/>
        <result column="des" property="des"/>
        <result column="remark" property="remark"/>
        <result column="wxapp_id" property="wxappId"/>
        <result column="status" property="status"/>
        <result column="avatarUrl" property="avatarUrl"/>
        <result column="nickName" property="nickName"/>
    </resultMap>

    <select id="selectUserBalanceLogAvatarUrlNickName" resultMap="WxuserbalancelogvoResultMap">
        select a.avatarUrl, a.nickName,b.* from alishop_shopuser a join alishop_user_balance_log b on a.id = b.user_id where b.is_deleted = 0
    </select>
</mapper>

3.去mapper.java文件里写方法

这里select里的id就是mapper.java文件里的方法名

public interface UserBalanceLogMapper extends BaseMapper<UserBalanceLog> {
	/**
	 * 多表查询,从“用户余额明细表”中查询“用户记录表”中的微信头像,微信昵称
	 * @param page
	 * @param userBalanceLog
	 * @return
	 */
	List<WxUserBalanceLogVO> selectUserBalanceLogAvatarUrlNickName(IPage<WxUserBalanceLogVO> page, WxUserBalanceLogVO userBalanceLog);
}

4.去service.java文件里写方法

/**
 * 用户余额变动明细表 服务类
 *
 * @author BladeX
 * @since 2019-09-04
 */
public interface IUserBalanceLogService extends BaseService<UserBalanceLog> {

	/**
	 * 多表查询,从“用户余额明细表”中查询“用户记录表”中的微信头像,微信昵称
	 * @param page
	 * @param userBalanceLog
	 * @return
	 */
	IPage<WxUserBalanceLogVO> selectUserBalanceLogAvatarUrlNickName(IPage<WxUserBalanceLogVO> page, WxUserBalanceLogVO userBalanceLog);

}

5.在实现类serviceImpl.java中实现service.java中的方法

/**
 * 用户余额变动明细表 服务实现类
 *
 * @author BladeX
 * @since 2019-09-04
 */
@Service
public class UserBalanceLogServiceImpl extends BaseServiceImpl<UserBalanceLogMapper, UserBalanceLog> implements IUserBalanceLogService {

	@Override
	public IPage<WxUserBalanceLogVO> selectUserBalanceLogAvatarUrlNickName(IPage<WxUserBalanceLogVO> page, WxUserBalanceLogVO userBalanceLog) {
		return page.setRecords(baseMapper.selectUserBalanceLogAvatarUrlNickName(page, userBalanceLog));
	}
}

6.在controller.java文件中写接口实现

@GetMapping("/pcpage")
	@ApiOperationSupport(order = 3)
	@ApiOperation(value = "分页", notes = "传入userBalanceLog")
	public R<IPage<WxUserBalanceLogVO>> page(WxUserBalanceLogVO userBalanceLog, Query query) {
		IPage<WxUserBalanceLogVO> pages = userBalanceLogService.selectUserBalanceLogAvatarUrlNickName(Condition.getPage(query), userBalanceLog);
		return R.data(pages);
	}

7.测试

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值