25个文件已修改
1个文件已删除
15个文件已添加
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.member.domain.dto.MgtMemberIntEditDto; |
| | | import com.ruoyi.member.domain.dto.MgtMemberPageDto; |
| | | import com.ruoyi.member.domain.dto.MgtMemberRelDelDto; |
| | | import com.ruoyi.member.domain.dto.MgtMemberRelEditDto; |
| | | import com.ruoyi.member.domain.vo.MerMemberInfoVo; |
| | | import com.ruoyi.member.domain.vo.MgtMemberGetVo; |
| | | import com.ruoyi.member.domain.vo.MgtMemberPageVo; |
| | | import com.ruoyi.member.domain.dto.*; |
| | | import com.ruoyi.member.domain.vo.*; |
| | | import com.ruoyi.member.service.member.BrowseRecordService; |
| | | import com.ruoyi.member.service.member.IntegralRecordService; |
| | | import com.ruoyi.member.service.member.MemberService; |
| | | import com.ruoyi.system.api.domain.dto.MerBaseGetDto; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; |
| | |
| | | @Autowired |
| | | private MemberService memberService; |
| | | |
| | | @Autowired |
| | | private IntegralRecordService integralRecordService; |
| | | |
| | | @Autowired |
| | | private BrowseRecordService browseRecordService; |
| | | |
| | | @RequestMapping(value = "/pageMgtMember", method = RequestMethod.POST) |
| | | @ApiOperation(value = "分页获取会员列表") |
| | |
| | | } |
| | | |
| | | @RequestMapping(value = "/editMemberIntegral", method = RequestMethod.POST) |
| | | @ApiOperation(value = "修改会员关联商户") |
| | | @ApiOperation(value = "修改会员积分") |
| | | public R<MerMemberInfoVo> editMemberIntegral(@RequestBody MgtMemberIntEditDto mgtMemberIntEditDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberIntEditDto.setUserId(userId); |
| | |
| | | |
| | | |
| | | |
| | | @RequestMapping(value = "/pageMgtMemberIntegral", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取用户积分列表") |
| | | public R<Page<MgtMemberIntegralPageVo>> pageMgtMemberIntegral(@RequestBody MgtMemberIntegralPageDto mgtMemberIntegralPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberIntegralPageDto.setUserId(userId); |
| | | Page<MgtMemberIntegralPageVo> page = new Page<>(); |
| | | page.setSize(mgtMemberIntegralPageDto.getPageSize()); |
| | | page.setCurrent(mgtMemberIntegralPageDto.getPageNum()); |
| | | List<MgtMemberIntegralPageVo> mgtMemberIntegralPageVoList = integralRecordService.pageMgtMemberIntegral(page,mgtMemberIntegralPageDto); |
| | | return R.ok(page.setRecords(mgtMemberIntegralPageVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageMgtMemberBrowse", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取用户浏览记录") |
| | | public R<Page<MgtMemberBrowsePageVo>> pageMgtMemberBrowse(@RequestBody MgtMemberBrowsePageDto mgtMemberBrowsePageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberBrowsePageDto.setUserId(userId); |
| | | Page<MgtMemberBrowsePageVo> page = new Page<>(); |
| | | page.setSize(mgtMemberBrowsePageDto.getPageSize()); |
| | | page.setCurrent(mgtMemberBrowsePageDto.getPageNum()); |
| | | List<MgtMemberBrowsePageVo> mgtMemberBrowsePageVoList = browseRecordService.pageMgtMemberBrowse(page,mgtMemberBrowsePageDto); |
| | | return R.ok(page.setRecords(mgtMemberBrowsePageVoList)); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | @Data |
| | | public class MemberIntegralChangeDto { |
| | | |
| | | @ApiModelProperty(value = "用户id") |
| | | private Long userId; |
| | | |
| | | @ApiModelProperty(value = "会员id") |
| | | private String memberId; |
| | | |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberIntegralPageDto |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberBrowsePageDto extends MgtPageDto { |
| | | |
| | | |
| | | @ApiModelProperty(value = "会员用户id") |
| | | private Long memberUserId; |
| | | |
| | | @ApiModelProperty(value = "浏览类型 1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟") |
| | | private Integer browseType; |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberIntegralPageDto |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberIntegralPageDto extends MgtPageDto { |
| | | |
| | | |
| | | @ApiModelProperty(value = "会员用户id") |
| | | private Long memberUserId; |
| | | |
| | | @ApiModelProperty(value = "变动开始时间") |
| | | private Date changeStartDate; |
| | | |
| | | @ApiModelProperty(value = "变动结束时间") |
| | | private Date changeEndDate; |
| | | |
| | | |
| | | } |
| | |
| | | @TableField("user_id") |
| | | private Long userId; |
| | | /** |
| | | * 浏览类型 |
| | | * 浏览类型1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟 |
| | | */ |
| | | @TableField("browse_type") |
| | | private Integer browseType; |
| | |
| | | */ |
| | | @TableField("browse_id") |
| | | private String browseId; |
| | | |
| | | /** |
| | | * 浏览名称 |
| | | */ |
| | | @TableField("browse_name") |
| | | private String browseName; |
| | | /** |
| | | * 浏览时间 |
| | | */ |
| | |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | |
| | | @TableField(value = "user_id") |
| | | private Long userId; |
| | | /** |
| | | * 变动类型 |
| | | */ |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberBrowsePageVo |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberBrowsePageVo { |
| | | |
| | | @ApiModelProperty(value = "浏览类型1鸿瑞学堂2营销活动3商城商品4关于鸿瑞堂5申请加盟") |
| | | private String browseType; |
| | | |
| | | @ApiModelProperty(value = "浏览名称") |
| | | private String browseName; |
| | | |
| | | @ApiModelProperty(value = "浏览时间") |
| | | private String browseTime; |
| | | |
| | | @ApiModelProperty(value = "创建时间") |
| | | private Date createTime; |
| | | } |
New file |
| | |
| | | package com.ruoyi.member.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberIntegralPageDto |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberIntegralPageVo { |
| | | |
| | | @ApiModelProperty(value = "记录id") |
| | | private Long recordId; |
| | | |
| | | @ApiModelProperty(value = "变动时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date createTime; |
| | | |
| | | @ApiModelProperty(value = "变动积分") |
| | | private Integer changeIntegral; |
| | | |
| | | @ApiModelProperty(value = "剩余积分") |
| | | private Integer surpIntegral; |
| | | |
| | | @ApiModelProperty(value = "变动理由") |
| | | private String changeReason; |
| | | } |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberBrowsePageDto; |
| | | import com.ruoyi.member.domain.pojo.member.BrowseRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.member.domain.vo.MgtMemberBrowsePageVo; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | */ |
| | | public interface BrowseRecordMapper extends BaseMapper<BrowseRecord> { |
| | | |
| | | |
| | | /** |
| | | * 平台分页获取会员浏览记录 |
| | | * @param page |
| | | * @param mgtMemberBrowsePageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberBrowsePageVo> pageMgtMemberBrowse(Page page, @Param("param")MgtMemberBrowsePageDto mgtMemberBrowsePageDto); |
| | | } |
| | |
| | | package com.ruoyi.member.mapper.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberIntegralPageDto; |
| | | import com.ruoyi.member.domain.pojo.member.IntegralRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.member.domain.vo.MgtMemberIntegralPageVo; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | * @since 2023-05-25 |
| | | */ |
| | | public interface IntegralRecordMapper extends BaseMapper<IntegralRecord> { |
| | | |
| | | /** |
| | | * 获取会员积分明细 |
| | | * @param mgtMemberIntegralPageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberIntegralPageVo> pageMgtMemberIntegral(Page page, @Param("param") MgtMemberIntegralPageDto mgtMemberIntegralPageDto); |
| | | } |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberBrowsePageDto; |
| | | import com.ruoyi.member.domain.pojo.member.BrowseRecord; |
| | | import com.ruoyi.member.domain.vo.MgtMemberBrowsePageVo; |
| | | import com.ruoyi.member.mapper.member.BrowseRecordMapper; |
| | | import com.ruoyi.member.service.member.BrowseRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @Service |
| | | public class BrowseRecordServiceImpl extends ServiceImpl<BrowseRecordMapper, BrowseRecord> implements BrowseRecordService { |
| | | |
| | | @Resource |
| | | private BrowseRecordMapper browseRecordMapper; |
| | | |
| | | /** |
| | | * 平台分页获取会员浏览记录 |
| | | * @param page |
| | | * @param mgtMemberBrowsePageDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtMemberBrowsePageVo> pageMgtMemberBrowse(Page page, MgtMemberBrowsePageDto mgtMemberBrowsePageDto){ |
| | | return browseRecordMapper.pageMgtMemberBrowse(page, mgtMemberBrowsePageDto); |
| | | |
| | | } |
| | | } |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberIntegralPageDto; |
| | | import com.ruoyi.member.domain.pojo.member.IntegralRecord; |
| | | import com.ruoyi.member.domain.vo.MgtMemberIntegralPageVo; |
| | | import com.ruoyi.member.mapper.member.IntegralRecordMapper; |
| | | import com.ruoyi.member.service.member.IntegralRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @Service |
| | | public class IntegralRecordServiceImpl extends ServiceImpl<IntegralRecordMapper, IntegralRecord> implements IntegralRecordService { |
| | | |
| | | @Resource |
| | | private IntegralRecordMapper integralRecordMapper; |
| | | |
| | | /** |
| | | * 获取会员积分明细 |
| | | * @param mgtMemberIntegralPageDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtMemberIntegralPageVo> pageMgtMemberIntegral(Page page, MgtMemberIntegralPageDto mgtMemberIntegralPageDto){ |
| | | return integralRecordMapper.pageMgtMemberIntegral(page, mgtMemberIntegralPageDto); |
| | | } |
| | | } |
| | |
| | | public void editMemberIntegral(MgtMemberIntEditDto mgtMemberIntEditDto){ |
| | | MemberIntegralChangeDto memberIntegralChangeDto = new MemberIntegralChangeDto(); |
| | | Member member = this.getByUserId(mgtMemberIntEditDto.getMemberUserId()); |
| | | memberIntegralChangeDto.setUserId(mgtMemberIntEditDto.getMemberUserId()); |
| | | memberIntegralChangeDto.setMemberId(member.getMemberId()); |
| | | memberIntegralChangeDto.setChangeType(1); |
| | | memberIntegralChangeDto.setRecordType(3); |
| | |
| | | //记录变动 |
| | | IntegralRecord integralRecord = new IntegralRecord(); |
| | | integralRecord.setDelFlag(0); |
| | | integralRecord.setUserId(memberIntegralChangeDto.getUserId()); |
| | | integralRecord.setChangeType(recordType); |
| | | if(changeType==1){ |
| | | integralRecord.setChangeIntegral(integer); |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberBrowsePageDto; |
| | | import com.ruoyi.member.domain.pojo.member.BrowseRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.member.domain.vo.MgtMemberBrowsePageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | */ |
| | | public interface BrowseRecordService extends IService<BrowseRecord> { |
| | | |
| | | /** |
| | | * 平台分页获取会员浏览记录 |
| | | * @param page |
| | | * @param mgtMemberBrowsePageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberBrowsePageVo> pageMgtMemberBrowse(Page page, MgtMemberBrowsePageDto mgtMemberBrowsePageDto); |
| | | } |
| | |
| | | package com.ruoyi.member.service.member; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.member.domain.dto.MgtMemberIntegralPageDto; |
| | | import com.ruoyi.member.domain.pojo.member.IntegralRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.member.domain.vo.MgtMemberIntegralPageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | */ |
| | | public interface IntegralRecordService extends IService<IntegralRecord> { |
| | | |
| | | |
| | | /** |
| | | * 获取会员积分明细 |
| | | * @param mgtMemberIntegralPageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberIntegralPageVo> pageMgtMemberIntegral(Page page, MgtMemberIntegralPageDto mgtMemberIntegralPageDto); |
| | | } |
| | |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="com.ruoyi.member.mapper.member.BrowseRecordMapper"> |
| | | |
| | | <select id="pageMgtMemberBrowse" resultType="com.ruoyi.member.domain.vo.MgtMemberBrowsePageVo"> |
| | | SELECT |
| | | CASE browse_type |
| | | WHEN 1 THEN "鸿瑞学堂" |
| | | WHEN 2 THEN "营销活动" |
| | | WHEN 3 THEN "商城商品" |
| | | WHEN 4 THEN "关于鸿瑞堂" |
| | | WHEN 5 THEN "申请加盟" |
| | | END browseType, |
| | | tbr.browse_name browseName, |
| | | tbr.browse_time browseTime, |
| | | tbr.create_time createTime |
| | | FROM t_browse_record tbr |
| | | WHERE tbr.del_flag = 0 AND tbr.user_id = #{param.memberUserId} |
| | | <if test="param.browseType !=null and param.browseType != ''"> |
| | | tbr.browse_type = #{param.browseType} |
| | | </if> |
| | | </select> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
| | | <mapper namespace="com.ruoyi.member.mapper.member.IntegralRecordMapper"> |
| | | |
| | | |
| | | <select id="pageMgtMemberIntegral" resultType="com.ruoyi.member.domain.vo.MgtMemberIntegralPageVo"> |
| | | SELECT |
| | | tir.record_id recordId, |
| | | tir.create_time createTime, |
| | | tir.change_integral changeIntegral, |
| | | tir.surp_integral surpIntegral, |
| | | tir.change_reason changeReason |
| | | FROM t_integral_record tir |
| | | WHERE tir.del_flag = 0 AND tir.user_id = #{param.memberUserId} |
| | | <if test="param.changeStartDate != null and param.changeStartDate != ''"> |
| | | AND tir.create_time >= #{param.changeStartDate} |
| | | </if> |
| | | <if test="param.changeEndDate != null and param.changeEndDate != ''"> |
| | | AND tir.create_time <= #{param.changeEndDate} |
| | | </if> |
| | | ORDER BY tir.create_time DESC |
| | | </select> |
| | | |
| | | </mapper> |
| | |
| | | <if test="param.keyword != null and param.keyword != ''"> |
| | | AND (tm.real_name LIKE CONCAT('%',#{param.keyword},'%') OR tm.mobile LIKE CONCAT('%',#{param.keyword},'%') OR tm.referrer LIKE CONCAT('%',#{param.keyword},'%')) |
| | | </if> |
| | | ORDER BY tm.create_time DESC |
| | | </select> |
| | | |
| | | <select id="pageMerCashMember" resultType="com.ruoyi.member.domain.vo.MerCashMemberPageVo"> |
| | |
| | | <if test="param.keyword != null and param.keyword != ''"> |
| | | AND (tm.real_name LIKE CONCAT('%',#{param.keyword},'%') OR tm.mobile LIKE CONCAT('%',#{param.keyword},'%')) |
| | | </if> |
| | | ORDER BY tm.create_time DESC |
| | | </select> |
| | | |
| | | <select id="pageMgtMember" resultType="com.ruoyi.member.domain.vo.MgtMemberPageVo"> |
| | |
| | | <if test="param.memberTag != null and param.memberTag != ''"> |
| | | AND FIND_IN_SET( tm.user_tags,#{param.memberTag}) |
| | | </if> |
| | | ORDER BY tm.create_time DESC |
| | | </select> |
| | | |
| | | </mapper> |
New file |
| | |
| | | package com.ruoyi.order.controller.management; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.order.domain.dto.MgtMemberOrderPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtMemberServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.vo.MgtMemberOrderPageVo; |
| | | import com.ruoyi.order.domain.vo.MgtMemberServiceRecordPageVo; |
| | | import com.ruoyi.order.service.order.UserServiceRecordService; |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberController |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "管理台会员相关接口", tags = "管理台会员相关接口", description = "管理台会员相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/member") |
| | | public class MgtMemberController { |
| | | |
| | | @Autowired |
| | | private UserServiceRecordService userServiceRecordService; |
| | | |
| | | @RequestMapping(value = "/pageMgtMemberServiceRecord", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取用户服务记录列表") |
| | | public R<Page<MgtMemberServiceRecordPageVo>> pageMgtMemberServiceRecord(@RequestBody MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberServiceRecordPageDto.setUserId(userId); |
| | | Page<MgtMemberServiceRecordPageVo> page = new Page<>(); |
| | | page.setSize(mgtMemberServiceRecordPageDto.getPageSize()); |
| | | page.setCurrent(mgtMemberServiceRecordPageDto.getPageNum()); |
| | | List<MgtMemberServiceRecordPageVo> list = userServiceRecordService.pageMgtMemberServiceRecord(page,mgtMemberServiceRecordPageDto); |
| | | return R.ok(page.setRecords(list)); |
| | | } |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberServiceRecordPageDto |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberServiceRecordPageDto extends MgtPageDto { |
| | | |
| | | @ApiModelProperty(value = "用户id") |
| | | private Long memberUserId; |
| | | |
| | | @ApiModelProperty(value = "关键词") |
| | | private String keyword; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.pojo.order; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.IdType; |
| | | import com.baomidou.mybatisplus.annotation.TableId; |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.baomidou.mybatisplus.activerecord.Model; |
| | | import com.baomidou.mybatisplus.annotation.TableName; |
| | | import java.io.Serializable; |
| | | |
| | | import lombok.Data; |
| | | import lombok.EqualsAndHashCode; |
| | | import lombok.experimental.Accessors; |
| | | |
| | | /** |
| | | * <p> |
| | | * |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-05-31 |
| | | */ |
| | | @Data |
| | | @EqualsAndHashCode(callSuper = false) |
| | | @Accessors(chain = true) |
| | | @TableName("t_service_record_detail") |
| | | public class ServiceRecordDetail extends Model<ServiceRecordDetail> { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * id |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Integer id; |
| | | /** |
| | | * 删除标记 |
| | | */ |
| | | @TableField("del_flag") |
| | | private Integer delFlag; |
| | | /** |
| | | * 记录id |
| | | */ |
| | | @TableField("record_id") |
| | | private Long recordId; |
| | | /** |
| | | * 服务商品id |
| | | */ |
| | | @TableField("consumer_goods_id") |
| | | private String consumerGoodsId; |
| | | /** |
| | | * 服务商品名称 |
| | | */ |
| | | @TableField("consumer_goods_name") |
| | | private String consumerGoodsName; |
| | | /** |
| | | * 服务次数 |
| | | */ |
| | | @TableField("service_num") |
| | | private Integer serviceNum; |
| | | /** |
| | | * 剩余次数 |
| | | */ |
| | | @TableField("surp_num") |
| | | private Integer surpNum; |
| | | |
| | | |
| | | @Override |
| | | protected Serializable pkVal() { |
| | | return this.id; |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberServiceRecordPageVo |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberServiceRecordPageVo { |
| | | |
| | | |
| | | |
| | | |
| | | @ApiModelProperty("服务类型1.周期2.服务3.体验") |
| | | private Integer serviceType; |
| | | |
| | | @ApiModelProperty("创建时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date createTime; |
| | | |
| | | @ApiModelProperty("服务商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty("服务商户") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty("服务商品名称") |
| | | private String consumerGoodsName; |
| | | |
| | | @ApiModelProperty("服务次数") |
| | | private Integer serviceNum; |
| | | |
| | | @ApiModelProperty("剩余次数") |
| | | private Integer surpNum; |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.mapper; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ServiceRecordDetail; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * Mapper 接口 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-05-31 |
| | | */ |
| | | public interface ServiceRecordDetailMapper extends BaseMapper<ServiceRecordDetail> { |
| | | |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.order.domain.dto.AppConsumerPageDto; |
| | | import com.ruoyi.order.domain.dto.MerServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtMemberServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.pojo.order.UserServiceRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.order.domain.vo.AppServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MerServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MgtMemberServiceRecordPageVo; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.List; |
| | |
| | | * @return |
| | | */ |
| | | List<MerServiceRecordPageVo> pageMerMemberServiceRecord(Page page,@Param("param") MerServiceRecordPageDto merServiceRecordPageDto); |
| | | |
| | | /** |
| | | * 平台分页获取用户服务记录 |
| | | * @param page |
| | | * @param mgtMemberServiceRecordPageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberServiceRecordPageVo> pageMgtMemberServiceRecord(Page page, @Param("param") MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto); |
| | | } |
| | |
| | | */ |
| | | @Override |
| | | public List<MgtMemberOrderPageVo> pageMgtMemberOrder(Page page, MgtMemberOrderPageDto mgtMemberOrderPageDto){ |
| | | return orderMapper.pageMgtMemberOrder(page, mgtMemberOrderPageDto); |
| | | List<MgtMemberOrderPageVo> mgtMemberOrderPageVoList = orderMapper.pageMgtMemberOrder(page, mgtMemberOrderPageDto); |
| | | if(mgtMemberOrderPageVoList!=null&&!mgtMemberOrderPageVoList.isEmpty()){ |
| | | Long shopId; |
| | | Shop shop; |
| | | for(MgtMemberOrderPageVo mgtMemberOrderPageVo : mgtMemberOrderPageVoList){ |
| | | shopId = mgtMemberOrderPageVo.getShopId(); |
| | | shop = remoteShopService.getShop(shopId).getData(); |
| | | mgtMemberOrderPageVo.setShopName(shop.getShopName()); |
| | | } |
| | | } |
| | | return mgtMemberOrderPageVoList; |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.impl.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ServiceRecordDetail; |
| | | import com.ruoyi.order.mapper.ServiceRecordDetailMapper; |
| | | import com.ruoyi.order.service.order.ServiceRecordDetailService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务实现类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-05-31 |
| | | */ |
| | | @Service |
| | | public class ServiceRecordDetailServiceImpl extends ServiceImpl<ServiceRecordDetailMapper, ServiceRecordDetail> implements ServiceRecordDetailService { |
| | | |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.order.domain.dto.AppConsumerPageDto; |
| | | import com.ruoyi.order.domain.dto.MerServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtMemberServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.pojo.order.UserServiceRecord; |
| | | import com.ruoyi.order.domain.vo.AppServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MerServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MgtMemberServiceRecordPageVo; |
| | | import com.ruoyi.order.mapper.order.UserServiceRecordMapper; |
| | | import com.ruoyi.order.service.order.UserServiceRecordService; |
| | | import org.springframework.stereotype.Service; |
| | |
| | | } |
| | | |
| | | /** |
| | | * |
| | | * 商户分页获取用户服务记录 |
| | | * @param page |
| | | * @param merServiceRecordPageDto |
| | | * @return |
| | |
| | | public List<MerServiceRecordPageVo> pageMerMemberServiceRecord(Page page, MerServiceRecordPageDto merServiceRecordPageDto){ |
| | | return userServiceRecordMapper.pageMerMemberServiceRecord(page, merServiceRecordPageDto); |
| | | } |
| | | |
| | | /** |
| | | * 平台分页获取用户服务记录 |
| | | * @param page |
| | | * @param mgtMemberServiceRecordPageDto |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtMemberServiceRecordPageVo> pageMgtMemberServiceRecord(Page page, MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto){ |
| | | return userServiceRecordMapper.pageMgtMemberServiceRecord(page, mgtMemberServiceRecordPageDto); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.service.order; |
| | | |
| | | import com.ruoyi.order.domain.pojo.order.ServiceRecordDetail; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | /** |
| | | * <p> |
| | | * 服务类 |
| | | * </p> |
| | | * |
| | | * @author jqs |
| | | * @since 2023-05-31 |
| | | */ |
| | | public interface ServiceRecordDetailService extends IService<ServiceRecordDetail> { |
| | | |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.order.domain.dto.AppConsumerPageDto; |
| | | import com.ruoyi.order.domain.dto.MerServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtMemberServiceRecordPageDto; |
| | | import com.ruoyi.order.domain.pojo.order.UserServiceRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.order.domain.vo.AppServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MerServiceRecordPageVo; |
| | | import com.ruoyi.order.domain.vo.MgtMemberServiceRecordPageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | List<AppServiceRecordPageVo> pageUserServiceRecord(Page page, AppConsumerPageDto appConsumerPageDto); |
| | | |
| | | /** |
| | | * |
| | | * 商户分页获取用户服务记录 |
| | | * @param page |
| | | * @param merServiceRecordPageDto |
| | | * @return |
| | | */ |
| | | List<MerServiceRecordPageVo> pageMerMemberServiceRecord(Page page, MerServiceRecordPageDto merServiceRecordPageDto); |
| | | |
| | | /** |
| | | * 平台分页获取用户服务记录 |
| | | * @param page |
| | | * @param mgtMemberServiceRecordPageDto |
| | | * @return |
| | | */ |
| | | List<MgtMemberServiceRecordPageVo> pageMgtMemberServiceRecord(Page page, MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto); |
| | | } |
| | |
| | | <if test="param.keyword != null and param.keyword != ''"> |
| | | AND toc.order_no LIKE CONCAT('%',#{param.keyword},'%') |
| | | </if> |
| | | ORDER BY toc.create_time DESC |
| | | </select> |
| | | |
| | | <select id="pageMgtMemberOrder" resultMap="mgtOrderResultMap"> |
| | | SELECT |
| | | toc.order_id orderId, |
| | | toc.order_no orderNo, |
| | | toc.order_status orderStatus, |
| | | CASE toc.order_status |
| | | WHEN 0 THEN "已取消" |
| | | WHEN 1 THEN "待支付" |
| | | WHEN 2 THEN "待核销" |
| | | WHEN 3 THEN "已完成" |
| | | END orderStatus, |
| | | toc.shop_id shopId, |
| | | toc.order_money orderGoodsMoney, |
| | | toc.discount_money discountMoney, |
| | |
| | | tog.goods_name goodsName, |
| | | tog.buy_num buyNum, |
| | | toc.create_time createTime, |
| | | toc.order_from orderFrom |
| | | CASE toc.order_from |
| | | WHEN 1 THEN "商城订单" |
| | | WHEN 2 THEN "秒杀活动订单" |
| | | WHEN 3 THEN "线下创建订单" |
| | | END orderFrom |
| | | FROM t_order toc |
| | | INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id |
| | | INNER JOIN t_goods tg ON tg.goods_id = tog.goods_id |
New file |
| | |
| | | <?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="com.ruoyi.order.mapper.ServiceRecordDetailMapper"> |
| | | |
| | | |
| | | </mapper> |
| | |
| | | WHERE tusr.del_flag = 0 AND tusr.user_id = #{param.memberUserId} AND tusr.shop_id = #{param.shopId} |
| | | ORDER BY tusr.create_time DESC |
| | | </select> |
| | | |
| | | <select id="pageMerMemberServiceRecord" resultType="com.ruoyi.order.domain.vo.MgtMemberServiceRecordPageVo"> |
| | | SELECT |
| | | tusr.shop_id shopId, |
| | | tsrd.consumer_goods_name consumerGoodsName, |
| | | tusr.service_type serviceType, |
| | | tusr.create_time createTime, |
| | | tsrd.service_num serviceNum, |
| | | tsrd.surp_num surpNum |
| | | FROM t_user_service_record tusr |
| | | INNER JOIN t_service_record_detail tsrd ON tsrd.record_id = tusr.id |
| | | WHERE tusr.del_flag = 0 AND tusr.user_id = #{param.memberUserId} |
| | | <if test="param.keyword != null and param.keyword != ''"> |
| | | AND tsrd.consumer_goods_name LIKE CONCAT('%',#{param.keyword},'%') |
| | | </if> |
| | | ORDER BY tusr.create_time DESC |
| | | </select> |
| | | </mapper> |
New file |
| | |
| | | package com.ruoyi.shop.controller.management; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo; |
| | | import com.ruoyi.shop.service.task.MemberTaskRecordService; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseDto; |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.RequestBody; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RequestMethod; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberController |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "管理台用户相关接口", tags = "管理台用户相关接口", description = "管理台用户相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/member") |
| | | public class MgtMemberController { |
| | | |
| | | |
| | | @Autowired |
| | | private MemberTaskRecordService memberTaskRecordService; |
| | | |
| | | @RequestMapping(value = "/pageMgtMemberFollow", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取用户跟进列表") |
| | | public R<Page<MgtMemberFollowPageVo>> pageMgtMemberFollow(@RequestBody MgtPageDto mgtPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtPageDto.setUserId(userId); |
| | | Page<MgtMemberFollowPageVo> page = new Page<>(); |
| | | page.setSize(mgtPageDto.getPageSize()); |
| | | page.setCurrent(mgtPageDto.getPageNum()); |
| | | List<MgtMemberFollowPageVo> mgtMemberFollowPageVoList = memberTaskRecordService.pageMgtMemberFollow(page); |
| | | return R.ok(page.setRecords(mgtMemberFollowPageVoList)); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberFollowPageDto |
| | | * @description: TODO |
| | | * @date 2023年05月31日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberFollowPageDto extends MgtPageDto { |
| | | |
| | | @ApiModelProperty(value = "会员用户id") |
| | | private Long memberUserId; |
| | | } |
| | |
| | | package com.ruoyi.shop.domain.dto; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.TableField; |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | |
| | | @Data |
| | | public class MgtShopPageDto extends MgtPageDto { |
| | | |
| | | @ApiModelProperty(value = "搜索关键词") |
| | | private String keyword ; |
| | | |
| | | @ApiModelProperty(value = "店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty(value = "店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty(value = "店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | @ApiModelProperty(value = "签约时间") |
| | | private Date signTime; |
| | | |
| | | @ApiModelProperty(value = "签约省code") |
| | | private String signProvinceCode; |
| | | |
| | | @ApiModelProperty(value = "签约市code") |
| | | private String signCityCode; |
| | | |
| | | @ApiModelProperty(value = "签约区域code") |
| | | private String signAreaCode; |
| | | |
| | | @ApiModelProperty(value = "商户状态0冻结1正常2终止合作") |
| | | private Integer shopStatus; |
| | | |
| | | @ApiModelProperty(value = "推荐人") |
| | | private String recommendPerson; |
| | | |
| | | @ApiModelProperty(value = "归属员工") |
| | | private Long belongUserId; |
| | | |
| | | @ApiModelProperty(value = "来源渠道") |
| | | private String shopSource; |
| | | |
| | | @ApiModelProperty(value = "店铺设置状态") |
| | | private String shopCustomStatus; |
| | | |
| | | @ApiModelProperty(value = "到期标记") |
| | | private Integer expireFlag; |
| | | |
| | | @ApiModelProperty(value = "商户标签") |
| | | private String shopTags; |
| | | |
| | | @ApiModelProperty(value = "扶持能力1.有2.没有") |
| | | private Integer supportingCapacityFlag; |
| | | |
| | | @ApiModelProperty(value = "店面操作人数1.1人2.1人以上") |
| | | private Integer operationPersonFlag; |
| | | |
| | | @ApiModelProperty(value = "执行力1.强2.弱") |
| | | private Integer executiveForceFlag; |
| | | |
| | | @ApiModelProperty(value = "格局1.大2.小") |
| | | private Integer patternFlag; |
| | | |
| | | @ApiModelProperty(value = "人脉1.宽2.窄") |
| | | private Integer connectionFlag; |
| | | |
| | | @ApiModelProperty(value = "经济能力1.强2.差") |
| | | private Integer economicAbilityFlag; |
| | | |
| | | @ApiModelProperty(value = "与合作商关系1.好2.差") |
| | | private Integer relationPartner; |
| | | |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.shop.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @author jqs34 |
| | | * @ClassName MgtMemberFollowPageVo |
| | | * @description: TODO |
| | | * @date 2023年05月06日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtMemberFollowPageVo { |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "商户名称") |
| | | private String shopName; |
| | | |
| | | @ApiModelProperty(value = "商户头像") |
| | | private String shopPicture; |
| | | |
| | | @ApiModelProperty(value = "跟进id") |
| | | private Long followId; |
| | | |
| | | @ApiModelProperty(value = "任务id") |
| | | private String taskId; |
| | | |
| | | @ApiModelProperty(value = "任务时间") |
| | | private String taskDate; |
| | | |
| | | @ApiModelProperty("跟踪类型1电话2手动") |
| | | private Integer followType; |
| | | |
| | | @ApiModelProperty("电话时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date callTime; |
| | | |
| | | @ApiModelProperty("跟踪内容") |
| | | private String followContent; |
| | | |
| | | @ApiModelProperty("拨打电话") |
| | | private String callPhone; |
| | | |
| | | @ApiModelProperty("跟进图片地址") |
| | | private List<String> picture; |
| | | |
| | | @ApiModelProperty("跟进视频地址") |
| | | private List<String> video; |
| | | |
| | | @ApiModelProperty("跟进音频地址") |
| | | private List<String> audio; |
| | | } |
| | |
| | | import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.shop.domain.vo.MerMemberTaskRecordPageVo; |
| | | import com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | | import java.util.List; |
| | |
| | | public interface MemberTaskRecordMapper extends BaseMapper<MemberTaskRecord> { |
| | | |
| | | /** |
| | | * |
| | | * 商户分页获取会员跟进任务 |
| | | * @param page |
| | | * @param merMemberTaskPageDto |
| | | * @return |
| | | */ |
| | | List<MerMemberTaskRecordPageVo> pageMerMemberTaskRecord(Page page, @Param("param") MerMemberTaskPageDto merMemberTaskPageDto); |
| | | |
| | | |
| | | /** |
| | | * 平台分页获取会员跟进任务 |
| | | * @param page |
| | | * @return |
| | | */ |
| | | List<MgtMemberFollowPageVo> pageMgtMemberFollow(Page page); |
| | | } |
| | |
| | | import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord; |
| | | import com.ruoyi.shop.domain.pojo.task.TaskFile; |
| | | import com.ruoyi.shop.domain.vo.MerMemberTaskRecordPageVo; |
| | | import com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo; |
| | | import com.ruoyi.shop.mapper.task.MemberTaskRecordMapper; |
| | | import com.ruoyi.shop.service.shop.ShopService; |
| | | import com.ruoyi.shop.service.task.MemberTaskRecordService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.shop.service.task.TaskFileService; |
| | | import com.ruoyi.shop.util.FileConvertUtils; |
| | | import com.ruoyi.system.api.domain.poji.shop.Shop; |
| | | import com.ruoyi.system.api.service.RemoteShopService; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | @Resource |
| | | private TaskFileService taskFileService; |
| | | |
| | | |
| | | @Resource |
| | | private ShopService shopService; |
| | | /** |
| | | * |
| | | * 商户分页获取会员跟进任务 |
| | | * @param page |
| | | * @param merMemberTaskPageDto |
| | | * @return |
| | |
| | | return merMemberTaskRecordPageVoList; |
| | | } |
| | | |
| | | /** |
| | | * 平台分页获取会员跟进任务 |
| | | * @param page |
| | | * @return |
| | | */ |
| | | @Override |
| | | public List<MgtMemberFollowPageVo> pageMgtMemberFollow(Page page){ |
| | | List<MgtMemberFollowPageVo> mgtMemberFollowPageVoList = memberTaskRecordMapper.pageMgtMemberFollow(page); |
| | | if(mgtMemberFollowPageVoList!=null&&!mgtMemberFollowPageVoList.isEmpty()){ |
| | | Long followId; |
| | | List<TaskFile> taskFileList; |
| | | List<String> picture = new ArrayList<>(); |
| | | List<String> video = new ArrayList<>(); |
| | | List<String> audio = new ArrayList<>(); |
| | | Long shopId; |
| | | Shop shop; |
| | | for(MgtMemberFollowPageVo mgtMemberFollowPageVo : mgtMemberFollowPageVoList){ |
| | | followId = mgtMemberFollowPageVo.getFollowId(); |
| | | taskFileList = taskFileService.listByFollowIdAndFollowType(followId,1); |
| | | if(taskFileList!=null&&!taskFileList.isEmpty()){ |
| | | picture = taskFileList.stream().map(k->k.getFileUrl()).collect(Collectors.toList()); |
| | | } |
| | | taskFileList = taskFileService.listByFollowIdAndFollowType(followId,2); |
| | | if(taskFileList!=null&&!taskFileList.isEmpty()){ |
| | | video = taskFileList.stream().map(k->k.getFileUrl()).collect(Collectors.toList()); |
| | | } |
| | | taskFileList = taskFileService.listByFollowIdAndFollowType(followId,3); |
| | | if(taskFileList!=null&&!taskFileList.isEmpty()){ |
| | | audio = taskFileList.stream().map(k->k.getFileUrl()).collect(Collectors.toList()); |
| | | } |
| | | mgtMemberFollowPageVo.setPicture(picture); |
| | | mgtMemberFollowPageVo.setVideo(video); |
| | | mgtMemberFollowPageVo.setAudio(audio); |
| | | } |
| | | } |
| | | return mgtMemberFollowPageVoList; |
| | | } |
| | | } |
| | |
| | | import com.ruoyi.shop.domain.pojo.task.MemberTaskRecord; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.shop.domain.vo.MerMemberTaskRecordPageVo; |
| | | import com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo; |
| | | |
| | | import java.util.List; |
| | | |
| | |
| | | public interface MemberTaskRecordService extends IService<MemberTaskRecord> { |
| | | |
| | | /** |
| | | * |
| | | * 商户分页获取会员跟进任务 |
| | | * @param page |
| | | * @param merMemberTaskPageDto |
| | | * @return |
| | | */ |
| | | List<MerMemberTaskRecordPageVo> pageMerMemberTaskRecord(Page page, MerMemberTaskPageDto merMemberTaskPageDto); |
| | | |
| | | /** |
| | | * 平台分页获取会员跟进任务 |
| | | * @param page |
| | | * @return |
| | | */ |
| | | List<MgtMemberFollowPageVo> pageMgtMemberFollow(Page page); |
| | | } |
| | |
| | | WHERE tmt.del_flag = 0 AND tmt.shop_id = #{param.shopId} AND tmt.user_id = #{param.memberUserId} |
| | | ORDER BY tmt.task_date DESC |
| | | </select> |
| | | |
| | | <select id="pageMgtMemberFollow" resultType="com.ruoyi.shop.domain.vo.MgtMemberFollowPageVo"> |
| | | SELECT |
| | | tmt.shop_id shopId, |
| | | ts.shop_name shopName, |
| | | tsf.file_url shopPicture, |
| | | tmtr.id followId, |
| | | tmtr.task_id taskId, |
| | | tmt.task_date taskDate, |
| | | tmtr.follow_type followType, |
| | | tmtr.call_time callTime, |
| | | tmtr.follow_content followContent, |
| | | tmtr.call_phone callPhone |
| | | FROM t_member_task tmt |
| | | INNER JOIN t_member_task_record tmtr ON tmtr.task_id = tmt.task_id |
| | | INNER JOIN t_shop ts ON ts.shop_id = tmt.shop_id |
| | | INNER JOIN t_shop_file tsf ON tsf.shop_id = ts.shop_id AND tsf.del_flag = 0 AND tsf.file_type = 1 |
| | | WHERE tmt.del_flag = 0 AND tmt.user_id = #{param.memberUserId} |
| | | ORDER BY tmt.task_date DESC |
| | | </select> |
| | | |
| | | </mapper> |