New file |
| | |
| | | package com.ruoyi.system.api.domain.dto; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @ClassName AppActivityGoodsPageVo |
| | | * @Description TODO |
| | | * @Author jqs |
| | | * @Date 2023/7/5 19:28 |
| | | * @Version 1.0 |
| | | */ |
| | | @Data |
| | | public class AppActivityGoodsPageDto extends AppPageDto{ |
| | | |
| | | @ApiModelProperty(value = "活动id") |
| | | private String activityId; |
| | | |
| | | @ApiModelProperty(value = "商户id",hidden = true) |
| | | private Long shopId; |
| | | } |
| | |
| | | @ApiModelProperty(value = "经销商数") |
| | | private Integer dealerTotal; |
| | | |
| | | @ApiModelProperty(value = "待回复建议数") |
| | | private Integer UnReplaySuggestTotal; |
| | | |
| | | } |
| | |
| | | return R.fail("获取活跃度失败:" + throwable.getMessage()); |
| | | } |
| | | |
| | | |
| | | |
| | | @Override |
| | | public R<List<SysTag>> listSysTag(Integer tagType) { |
| | | return R.fail("获取标签失败:" + throwable.getMessage()); |
| | |
| | | return R.fail("获取年龄段userId失败:" + throwable.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public R<Integer> getUnReplaySuggestVo() { |
| | | return null; |
| | | } |
| | | |
| | | |
| | | }; |
| | | } |
| | |
| | | public R<List<Long>> listShopIdByShopId(Long shopId) { |
| | | return R.fail("获取商户列表失败:" + throwable.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public R<Integer> getUnReplaySuggestVo() { |
| | | return null; |
| | | } |
| | | }; |
| | | } |
| | | } |
| | |
| | | return R.fail("更新用户信息失败:" + throwable.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public R frozenUser(Long userId) { |
| | | return R.fail("冻结用户失败:" + throwable.getMessage()); |
| | | } |
| | | }; |
| | | } |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/config/getActivenessByName") |
| | | public R<Activeness> getActivenessByName(@RequestBody String name); |
| | | |
| | | |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/listOrderAgeUser") |
| | | public R<List<MerOrderAgeUserVo>> listOrderAgeUser(@RequestBody MerTotalDto merTotalDto); |
| | | |
| | | /** |
| | | * @description 获取未回复数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:49 |
| | | * @param |
| | | * @return R<Integer> |
| | | */ |
| | | @PostMapping("/getUnReplaySuggestVo") |
| | | public R<Integer> getUnReplaySuggestVo(); |
| | | } |
| | |
| | | */ |
| | | @PostMapping("/listShopIdByShopId") |
| | | public R<List<Long>> listShopIdByShopId(@RequestBody Long shopId); |
| | | |
| | | /** |
| | | * @description 获取未回复数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:49 |
| | | * @param |
| | | * @return R<Integer> |
| | | */ |
| | | @PostMapping("/getUnReplaySuggestVo") |
| | | public R<Integer> getUnReplaySuggestVo(); |
| | | } |
| | |
| | | @PostMapping("/user/editUserInfo") |
| | | public R editUserInfo(@RequestBody AppEditUserDto appEditUserDto); |
| | | |
| | | |
| | | /** |
| | | * @description 冻结用户 |
| | | * @author jqs |
| | | * @date 2023/6/29 17:20 |
| | | * @param userId |
| | | * @return R<Activeness> |
| | | */ |
| | | @PostMapping("/config/frozenUser") |
| | | public R frozenUser(@RequestBody Long userId); |
| | | } |
| | |
| | | * @Date 2023/6/14 10:17 |
| | | * @Version 1.0 |
| | | */ |
| | | @Api(value = "平台端活动相关接口", tags = "平台端活动相关接口", description = "平台端活动相关接口") |
| | | @Api(value = "管理后台活动相关接口", tags = "管理后台活动相关接口", description = "管理后台活动相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/activity") |
| | | public class MgtActivityController { |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtActivityRecord", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出活动参与记录列表") |
| | | public void exportPageMgtActivityRecord(@RequestBody MgtActivityRecordPageDto mgtActivityRecordPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtActivityRecord( MgtActivityRecordPageDto mgtActivityRecordPageDto, HttpServletResponse response) { |
| | | Page<MgtActivityRecordPageVo> page = new Page<>(); |
| | | page.setSize(2000); |
| | | page.setCurrent(1); |
| | |
| | | import com.ruoyi.goods.domain.vo.MgtGoodsPageVo; |
| | | import com.ruoyi.goods.domain.vo.MgtGoodsTotalVo; |
| | | import com.ruoyi.goods.service.goods.GoodsService; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseDto; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseGetDto; |
| | | import com.ruoyi.system.api.domain.vo.MgtSelectGoodsPageVo; |
| | | import io.swagger.annotations.Api; |
| | |
| | | * @date 2023年06月01日 |
| | | * @version: 1.0 |
| | | */ |
| | | @Api(value = "平台端商品相关接口", tags = "平台端商品相关接口", description = "平台端商品相关接口") |
| | | @Api(value = "管理后台商品相关接口", tags = "管理后台商品相关接口", description = "管理后台商品相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/goods") |
| | | public class MgtGoodsController { |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出商品列表") |
| | | public void exportPageMgtGoods(@RequestBody MgtGoodsPageDto mgtGoodsPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtGoods( MgtGoodsPageDto mgtGoodsPageDto, HttpServletResponse response) { |
| | | Page<MgtGoodsPageVo> page = new Page<>(); |
| | | page.setSize(2000); |
| | | page.setCurrent(1); |
| | |
| | | |
| | | @RequestMapping(value = "/getMgtGoodsTotal", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取商品统计") |
| | | public R<MgtGoodsTotalVo> getMgtGoodsTotal(@RequestBody MgtBaseDto mgtBaseDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtBaseDto.setUserId(userId); |
| | | public R<MgtGoodsTotalVo> getMgtGoodsTotal() { |
| | | MgtGoodsTotalVo mgtGoodsTotalVo = goodsService.getMgtGoodsTotal(); |
| | | return R.ok(mgtGoodsTotalVo); |
| | | } |
New file |
| | |
| | | package com.ruoyi.goods.controller.miniapp; |
| | | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.exception.ServiceException; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.goods.domain.vo.AppActivityPageVo; |
| | | import com.ruoyi.goods.service.activity.ActivityService; |
| | | import com.ruoyi.goods.service.goods.GoodsService; |
| | | import com.ruoyi.system.api.constant.AppErrorConstant; |
| | | import com.ruoyi.system.api.domain.dto.AppPageDto; |
| | | import com.ruoyi.system.api.domain.poji.member.Member; |
| | | import com.ruoyi.system.api.service.RemoteMemberService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | 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 javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @ClassName AppActivityController |
| | | * @Description TODO |
| | | * @Author jqs |
| | | * @Date 2023/7/5 18:02 |
| | | * @Version 1.0 |
| | | */ |
| | | @Api(value = "小程序首页相关接口", tags = "小程序首页相关接口", description = "小程序首页相关接口") |
| | | @RestController |
| | | @RequestMapping("/app/activity") |
| | | public class AppActivityController { |
| | | |
| | | @Resource |
| | | private RemoteMemberService memberService; |
| | | |
| | | @Resource |
| | | private ActivityService activityService; |
| | | |
| | | @Resource |
| | | private GoodsService goodsService; |
| | | |
| | | @RequestMapping(value = "/pageAppActivity", method = RequestMethod.POST) |
| | | @ApiOperation(value = "分页获取秒杀活动") |
| | | public R<Page<AppActivityPageVo>> pageAppActivity(@RequestBody AppPageDto appPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | Long shopId = null; |
| | | if(userId!=null){ |
| | | Member member = memberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRelationShopId()!=null){ |
| | | shopId = member.getRelationShopId(); |
| | | } |
| | | } |
| | | if(shopId==null){ |
| | | throw new ServiceException(AppErrorConstant.NO_POSITION); |
| | | } |
| | | Page<AppActivityPageVo> page = new Page<>(); |
| | | page.setSize(appPageDto.getPageSize()); |
| | | page.setCurrent(appPageDto.getPageNum()); |
| | | List<AppActivityPageVo> activityPageVoList = activityService.pageAppActivity(page,shopId); |
| | | return R.ok(page.setRecords(activityPageVoList)); |
| | | } |
| | | |
| | | |
| | | /*@RequestMapping(value = "/pageAppActivityGoods", method = RequestMethod.POST) |
| | | @ApiOperation(value = "分页获取活动商品") |
| | | public R<Page<AppSimpleActivityGoodsVo>> pageAppActivityGoods(@RequestBody AppActivityGoodsPageDto appActivityGoodsPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | if(userId!=null){ |
| | | Member member = memberService.getMember(userId).getData(); |
| | | if(member!=null&&member.getRelationShopId()!=null){ |
| | | appActivityGoodsPageDto.setShopId(member.getRelationShopId()); |
| | | } |
| | | } |
| | | if(appActivityGoodsPageDto.getShopId()==null){ |
| | | throw new ServiceException(AppErrorConstant.NO_POSITION); |
| | | } |
| | | Page<AppSimpleActivityGoodsVo> page = new Page<>(); |
| | | page.setSize(appActivityGoodsPageDto.getPageSize()); |
| | | page.setCurrent(appActivityGoodsPageDto.getPageNum()); |
| | | List<AppSimpleActivityGoodsVo> appSimpleGoodsVoList = goodsService.pageAppActivityGoods(page,appActivityGoodsPageDto); |
| | | return R.ok(page.setRecords(appSimpleGoodsVoList)); |
| | | }*/ |
| | | } |
New file |
| | |
| | | package com.ruoyi.goods.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @ClassName AppActivityPageVo |
| | | * @Description TODO |
| | | * @Author jqs |
| | | * @Date 2023/7/5 18:35 |
| | | * @Version 1.0 |
| | | */ |
| | | @Data |
| | | public class AppActivityPageVo { |
| | | |
| | | @ApiModelProperty(value = "活动id") |
| | | private String activityId; |
| | | |
| | | @ApiModelProperty(value = "活动名称") |
| | | private String activityName; |
| | | |
| | | @ApiModelProperty(value = "活动开始时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date activityStartTime; |
| | | |
| | | @ApiModelProperty(value = "活动结束时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date activityEndTime; |
| | | |
| | | @ApiModelProperty(value = "活动状态") |
| | | private String activityStatus; |
| | | |
| | | @ApiModelProperty(value = "宣传海报") |
| | | private String propagandaPoster; |
| | | |
| | | |
| | | } |
| | |
| | | private String activityName; |
| | | |
| | | @ApiModelProperty(value = "活动开始时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date activityStartTime; |
| | | |
| | | @ApiModelProperty(value = "活动结束时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date activityEndTime; |
| | | |
| | | @ApiModelProperty(value = "付款订单数") |
| | | private Integer orderTotal; |
| | | |
| | | @ApiModelProperty(value = "付款人数") |
| | | private Date personTotal; |
| | | private Integer personTotal; |
| | | |
| | | @ApiModelProperty(value = "适用店铺") |
| | | private String shopFlag; |
| | |
| | | @ApiModelProperty(value = "推荐标记") |
| | | private String recommendFlag; |
| | | |
| | | @ApiModelProperty(value = "创建开始时间") |
| | | @ApiModelProperty(value = "创建时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date createTime; |
| | | } |
| | |
| | | import com.ruoyi.goods.domain.dto.MgtActivityRecordPageDto; |
| | | import com.ruoyi.goods.domain.pojo.activity.Activity; |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.goods.domain.vo.MerActivityPageVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityListVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityPageVo; |
| | | import com.ruoyi.goods.domain.vo.MgtActivityRecordPageVo; |
| | | import com.ruoyi.goods.domain.vo.*; |
| | | import com.ruoyi.system.api.domain.dto.MerPageDto; |
| | | import org.apache.ibatis.annotations.Param; |
| | | |
| | |
| | | * @return List<Long> |
| | | */ |
| | | List<String> listActivityIdByShopId(@Param("shopId")Long shopId); |
| | | |
| | | |
| | | /** |
| | | * @description 分页获取活动列表 |
| | | * @author jqs |
| | | * @date 2023/7/5 18:45 |
| | | * @param page |
| | | * @param shopId |
| | | * @return List<AppActivityPageVo> |
| | | */ |
| | | List<AppActivityPageVo> pageAppActivity(Page page, @Param("shopId")Long shopId); |
| | | } |
| | |
| | | * @return List<String> |
| | | */ |
| | | List<String> listActivityIdByShopId(Long shopId); |
| | | |
| | | /** |
| | | * @description 分页获取活动列表 |
| | | * @author jqs |
| | | * @date 2023/7/5 18:45 |
| | | * @param page |
| | | * @param shopId |
| | | * @return List<AppActivityPageVo> |
| | | */ |
| | | List<AppActivityPageVo> pageAppActivity(Page page, Long shopId); |
| | | } |
| | |
| | | public List<String> listActivityIdByShopId(Long shopId){ |
| | | return activityMapper.listActivityIdByShopId(shopId); |
| | | } |
| | | |
| | | /** |
| | | * @description 分页获取活动列表 |
| | | * @author jqs |
| | | * @date 2023/7/5 18:45 |
| | | * @param page |
| | | * @param shopId |
| | | * @return List<AppActivityPageVo> |
| | | */ |
| | | @Override |
| | | public List<AppActivityPageVo> pageAppActivity(Page page, Long shopId){ |
| | | return activityMapper.pageAppActivity(page, shopId); |
| | | } |
| | | } |
| | |
| | | <select id="getRecommendActivity" resultType="com.ruoyi.goods.domain.pojo.activity.Activity"> |
| | | SELECT * FROM t_activity |
| | | WHERE del_flag = 0 AND recommend_flag = 1 AND NOW() BETWEEN activity_start_time AND activity_end_time |
| | | AND activity_status = 1 AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, ta.applicable_shop) > 0) |
| | | AND activity_status = 1 AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, applicable_shop) > 0) |
| | | ORDER BY activity_end_time - NOW() |
| | | LIMIT 1; |
| | | </select> |
| | |
| | | <select id="listActivityIdByShopId" resultType="java.lang.String"> |
| | | SELECT activity_id FROM t_activity |
| | | WHERE del_flag = 0 AND activity_status = 1 AND NOW() BETWEEN activity_start_time AND activity_end_time |
| | | AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, ta.applicable_shop) > 0) |
| | | AND shop_flag = 1 OR (shop_flag = 2 AND FIND_IN_SET(#{shopId}, applicable_shop) > 0) |
| | | </select> |
| | | |
| | | <select id="pageAppActivity" resultType="com.ruoyi.goods.domain.vo.AppActivityPageVo"> |
| | | SELECT |
| | | ta.activity_id activityId, |
| | | ta.activity_name activityName, |
| | | ta.activity_start_time activityStartTime, |
| | | ta.activity_end_time activityEndTime, |
| | | CASE ta.activity_status |
| | | WHEN 0 THEN '未开始' |
| | | WHEN 1 THEN '进行中' |
| | | WHEN 2 THEN '已结束' |
| | | END activityStatus, |
| | | ta.propaganda_poster propagandaPoster, |
| | | FROM t_activity ta |
| | | WHERE ta.del_flag = 0 AND FIND_IN_SET(#{shopId}, ta.applicable_shop) > 0 |
| | | group by ta.activity_id |
| | | ORDER BY ta.activity_status ASC,ta.create_time DESC |
| | | </select> |
| | | </mapper> |
| | |
| | | List<MerOrderAgeUserVo> orderAgeUserVoList = memberService.listOrderAgeUser(merTotalDto); |
| | | return R.ok(orderAgeUserVoList); |
| | | } |
| | | |
| | | /** |
| | | * @description 获取未回复数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:49 |
| | | * @param |
| | | * @return R<Integer> |
| | | */ |
| | | @PostMapping("/getUnReplaySuggestVo") |
| | | public R<Integer> getUnReplaySuggestVo() |
| | | { |
| | | Integer count = memberSuggestService.getUnReplaySuggestVo(); |
| | | return R.ok(count); |
| | | } |
| | | |
| | | } |
| | |
| | | * @Date 2023/6/15 11:52 |
| | | * @Version 1.0 |
| | | */ |
| | | @Api(value = "平台端生日卡相关接口", tags = "平台端生日卡相关接口", description = "平台端生日卡相关接口") |
| | | @Api(value = "管理后台生日卡相关接口", tags = "管理后台生日卡相关接口", description = "管理后台生日卡相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/birthday") |
| | | public class MgtBirthdayController { |
| | |
| | | * @Date 2023/6/13 9:15 |
| | | * @Version 1.0 |
| | | */ |
| | | @Api(value = "平台端优惠券相关接口", tags = "平台端优惠券相关接口", description = "平台端优惠券相关接口") |
| | | @Api(value = "管理后台优惠券相关接口", tags = "管理后台优惠券相关接口", description = "管理后台优惠券相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/coupon") |
| | | public class MgtCouponController { |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMember", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出会员列表") |
| | | public void exportPageMgtMember(@RequestBody MgtMemberPageDto mgtMemberPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtMember(MgtMemberPageDto mgtMemberPageDto, HttpServletResponse response) { |
| | | Page<MgtMemberPageVo> page = new Page<>(); |
| | | page.setSize(2000); |
| | | page.setCurrent(1); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMemberIntegral", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出用户积分列表") |
| | | public void exportPageMgtMemberIntegral(@RequestBody MgtMemberIntegralPageDto mgtMemberIntegralPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtMemberIntegral( MgtMemberIntegralPageDto mgtMemberIntegralPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberIntegralPageDto.setUserId(userId); |
| | | Page<MgtMemberIntegralPageVo> page = new Page<>(); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMemberBrowse", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出用户浏览记录") |
| | | public void exportPageMgtMemberBrowse(@RequestBody MgtMemberBrowsePageDto mgtMemberBrowsePageDto, HttpServletResponse response) { |
| | | public void exportPageMgtMemberBrowse( MgtMemberBrowsePageDto mgtMemberBrowsePageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberBrowsePageDto.setUserId(userId); |
| | | Page<MgtMemberBrowsePageVo> page = new Page<>(); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMemberSuggest", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出用户建议列表") |
| | | public void exportPageMgtMemberSuggest(@RequestBody MgtMemberSuggestPageDto memberSuggestPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtMemberSuggest( MgtMemberSuggestPageDto memberSuggestPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | memberSuggestPageDto.setUserId(userId); |
| | | Page<MgtMemberSuggestPageVo> page = new Page<>(); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/mgtFrozenMember", method = RequestMethod.POST) |
| | | @Log(title = "会员建议管理", businessType = BusinessType.UPDATE,operContent = "冻结会员") |
| | | @ApiOperation(value = "冻结会员") |
| | | public R mgtReplayMemberSuggest(@RequestBody MgtBaseGetDto mgtBaseGetDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtBaseGetDto.setUserId(userId); |
| | | memberService.mgtFrozenMember(mgtBaseGetDto); |
| | | return R.ok(); |
| | | } |
| | | } |
| | |
| | | @ApiModelProperty(value = "用户姓名") |
| | | private String realName; |
| | | |
| | | @ApiModelProperty(value = "用户姓名") |
| | | private String avatar; |
| | | |
| | | @ApiModelProperty(value = "用户昵称") |
| | | private String nickName; |
| | | |
| | |
| | | queryWrapper.eq(Coupon::getCouponStatus,1); |
| | | queryWrapper.eq(Coupon::getSendTimeType,2); |
| | | queryWrapper.eq(Coupon::getAuditStatus,2); |
| | | queryWrapper.eq(Coupon::getSendTime,new Date()); |
| | | queryWrapper.eq(Coupon::getSendTime,DateUtils.getNowDate()); |
| | | List<Coupon> couponList = couponMapper.selectList(queryWrapper); |
| | | if(couponList!=null&&!couponList.isEmpty()){ |
| | | List<CouponRelUser> couponRelUserList; |
| | |
| | | mgtMemberGetVo.setMemberNo(member.getMemberNo()); |
| | | mgtMemberGetVo.setRealName(member.getRealName()); |
| | | mgtMemberGetVo.setNickName(member.getNickName()); |
| | | mgtMemberGetVo.setAvatar(member.getAvatar()); |
| | | mgtMemberGetVo.setMobile(member.getMobile()); |
| | | mgtMemberGetVo.setGender(member.getGender() == 0 ? "男" : member.getGender() == 1 ? "女" : null); |
| | | mgtMemberGetVo.setBirthday(member.getBirthday()); |
| | |
| | | orderAgeUserVoList.add(merOrderAgeUserVo); |
| | | return orderAgeUserVoList; |
| | | } |
| | | |
| | | /** |
| | | * @description |
| | | * @author jqs |
| | | * @date 2023/7/5 21:18 |
| | | * @param mgtBaseGetDto |
| | | * @return void |
| | | */ |
| | | @Override |
| | | public void mgtFrozenMember(MgtBaseGetDto mgtBaseGetDto){ |
| | | sysUserService.frozenUser(Long.valueOf(mgtBaseGetDto.getId())); |
| | | } |
| | | } |
| | |
| | | package com.ruoyi.member.service.impl.member; |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | |
| | | memberSuggest.setSuggestTags(mgtTagMemberSuggestDto.getSuggestTags()); |
| | | this.saveOrUpdate(memberSuggest); |
| | | } |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | @Override |
| | | public Integer getUnReplaySuggestVo(){ |
| | | LambdaQueryWrapper<MemberSuggest> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(MemberSuggest::getDelFlag,0); |
| | | queryWrapper.eq(MemberSuggest::getReplayFlag,0); |
| | | return this.count(queryWrapper); |
| | | } |
| | | } |
| | |
| | | * @return MerOrderAgeUserVo |
| | | */ |
| | | List<MerOrderAgeUserVo> listOrderAgeUser(MerTotalDto merTotalDto); |
| | | |
| | | /** |
| | | * @description |
| | | * @author jqs |
| | | * @date 2023/7/5 21:18 |
| | | * @param mgtBaseGetDto |
| | | * @return void |
| | | */ |
| | | void mgtFrozenMember(MgtBaseGetDto mgtBaseGetDto); |
| | | } |
| | |
| | | * @date 2023/6/11 16:28 |
| | | */ |
| | | void mgtEditMemberSuggestTag(MgtTagMemberSuggestDto mgtTagMemberSuggestDto); |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | Integer getUnReplaySuggestVo(); |
| | | } |
| | |
| | | MgtBulletinBoardVo mgtBulletinBoardVo = new MgtBulletinBoardVo(); |
| | | MgtBulletinBoardVo mgtBulletinBoardVoOrder = orderService.boardOrderTotal(); |
| | | mgtBulletinBoardVo.setSalesTotal(mgtBulletinBoardVoOrder.getSalesTotal()); |
| | | mgtBulletinBoardVo.setUnUseOrderTotal(mgtBulletinBoardVo.getUnUseOrderTotal()); |
| | | mgtBulletinBoardVo.setActivityOrderTotal(mgtBulletinBoardVo.getActivityOrderTotal()); |
| | | mgtBulletinBoardVo.setUnUseOrderTotal(mgtBulletinBoardVoOrder.getUnUseOrderTotal()); |
| | | mgtBulletinBoardVo.setActivityOrderTotal(mgtBulletinBoardVoOrder.getActivityOrderTotal()); |
| | | return R.ok(mgtBulletinBoardVo); |
| | | } |
| | | |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMemberServiceRecord", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出用户服务记录列表") |
| | | public void exportPageMgtMemberServiceRecord(@RequestBody MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtMemberServiceRecord( MgtMemberServiceRecordPageDto mgtMemberServiceRecordPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberServiceRecordPageDto.setUserId(userId); |
| | | Page<MgtMemberServiceRecordPageVo> page = new Page<>(); |
| | |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.order.domain.dto.MgtMemberOrderPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtMemberOrderTotalDto; |
| | | import com.ruoyi.order.domain.dto.MgtShopAllOrderPageDto; |
| | | import com.ruoyi.order.domain.dto.MgtShopOrderPageDto; |
| | | import com.ruoyi.order.domain.vo.*; |
| | | import com.ruoyi.order.service.order.OrderService; |
| | |
| | | } |
| | | |
| | | @RequestMapping(value = "/exportPageMgtMemberOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取用户订单列表") |
| | | public void exportPageMgtMemberOrder(@RequestBody MgtMemberOrderPageDto mgtMemberOrderPageDto, HttpServletResponse response) { |
| | | @ApiOperation(value = "导出获取用户订单列表") |
| | | public void exportPageMgtMemberOrder(MgtMemberOrderPageDto mgtMemberOrderPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtMemberOrderPageDto.setUserId(userId); |
| | | Page<MgtMemberOrderPageVo> page = new Page<>(); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtActivityOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出秒杀订单列表") |
| | | public void exportPageMgtActivityOrder(@RequestBody MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtActivityOrder( MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopOrderPageDto.setUserId(userId); |
| | | Page<MgtActivityOrderPageVo> page = new Page<>(); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtShopOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出门店订单列表") |
| | | public void exportPageMgtShopOrder(@RequestBody MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtShopOrder( MgtShopOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopOrderPageDto.setUserId(userId); |
| | | Page<MgtShopOrderPageVo> page = new Page<>(); |
| | | page.setSize(2000); |
| | | page.setCurrent(1); |
| | | List<MgtShopOrderPageVo> shopOrderPageVoList = orderService.pageMgtShopOrder(page,mgtShopOrderPageDto); |
| | | if(!shopOrderPageVoList.isEmpty()){ |
| | | List<MgtOrderGoodsPageVo> mgtOrderGoodsVoList; |
| | | String goodsString; |
| | | for(MgtShopOrderPageVo entity : shopOrderPageVoList){ |
| | | mgtOrderGoodsVoList = entity.getMgtOrderGoodsPageVoList(); |
| | | goodsString = mgtOrderGoodsVoList.stream() |
| | | .map(goods -> goods.getGoodsName() + "*" + goods.getBuyNum()) |
| | | .collect(Collectors.joining(";")); |
| | | entity.setGoodsInfo(goodsString); |
| | | } |
| | | } |
| | | ExcelUtil<MgtShopOrderPageVo> util = new ExcelUtil<MgtShopOrderPageVo>(MgtShopOrderPageVo.class); |
| | | util.exportExcel(response, shopOrderPageVoList, "门店订单列表"); |
| | | } |
| | |
| | | return R.ok(mgtOrderDetail); |
| | | } |
| | | |
| | | @RequestMapping(value = "/pageMgtShopAllOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取商户订单记录") |
| | | public R<Page<MgtShopAllOrderPageVo>> pageMgtShopAllOrder(@RequestBody MgtShopAllOrderPageDto mgtShopAllOrderPageDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopAllOrderPageDto.setUserId(userId); |
| | | Page<MgtShopAllOrderPageVo> page = new Page<>(); |
| | | page.setSize(mgtShopAllOrderPageDto.getPageSize()); |
| | | page.setCurrent(mgtShopAllOrderPageDto.getPageNum()); |
| | | List<MgtShopAllOrderPageVo> shopAllOrderPageVoList = orderService.pageMgtShopAllOrder(page,mgtShopAllOrderPageDto); |
| | | return R.ok(page.setRecords(shopAllOrderPageVoList)); |
| | | } |
| | | |
| | | @RequestMapping(value = "/exportPageMgtShopAllOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出平台获取商户订单记录") |
| | | public void pageMgtShopAllOrder(MgtShopAllOrderPageDto mgtShopAllOrderPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopAllOrderPageDto.setUserId(userId); |
| | | Page<MgtShopAllOrderPageVo> page = new Page<>(); |
| | | page.setSize(mgtShopAllOrderPageDto.getPageSize()); |
| | | page.setCurrent(mgtShopAllOrderPageDto.getPageNum()); |
| | | List<MgtShopAllOrderPageVo> shopAllOrderPageVoList = orderService.pageMgtShopAllOrder(page,mgtShopAllOrderPageDto); |
| | | ExcelUtil<MgtShopAllOrderPageVo> util = new ExcelUtil<MgtShopAllOrderPageVo>(MgtShopAllOrderPageVo.class); |
| | | util.exportExcel(response, shopAllOrderPageVoList, "商户订单记录"); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | /** |
| | | * @ClassName MgtShopAllOrderPageDto |
| | | * @Description TODO |
| | | * @Author jqs |
| | | * @Date 2023/7/5 20:14 |
| | | * @Version 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopAllOrderPageDto extends MgtPageDto { |
| | | |
| | | @ApiModelProperty(value = "订单号") |
| | | private String orderNo; |
| | | |
| | | @ApiModelProperty(value = "订单状态0.已取消1.待支付2.待核销3.已完成") |
| | | private Integer orderStatus; |
| | | |
| | | @ApiModelProperty(value = "订单开始日期") |
| | | private String startOrderDate; |
| | | |
| | | @ApiModelProperty(value = "订单结束日期") |
| | | private String endOrderDate; |
| | | |
| | | @ApiModelProperty(value = "订单来源1.店铺商品2.平台秒杀活动3.线下创建") |
| | | private Integer orderFrom; |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @ClassName MgtShopAllOrderPageVo |
| | | * @Description TODO |
| | | * @Author jqs |
| | | * @Date 2023/7/5 20:10 |
| | | * @Version 1.0 |
| | | */ |
| | | @Data |
| | | public class MgtShopAllOrderPageVo { |
| | | |
| | | @ApiModelProperty("订单id") |
| | | private String orderId; |
| | | |
| | | @Excel(name = "订单编号", width = 30) |
| | | @ApiModelProperty("订单编号") |
| | | private String orderNo; |
| | | |
| | | @ApiModelProperty(value = "用户id") |
| | | private Long userId; |
| | | |
| | | @Excel(name = "客户信息", width = 30) |
| | | @ApiModelProperty(value = "客户信息") |
| | | private String userInfo; |
| | | |
| | | @ApiModelProperty("订单商品列表") |
| | | private List<MgtOrderGoodsPageVo> mgtOrderGoodsPageVoList; |
| | | |
| | | @Excel(name = "商品信息", width = 30) |
| | | @ApiModelProperty("商品信息") |
| | | private String goodsInfo; |
| | | |
| | | @Excel(name = "订单金额", width = 30) |
| | | @ApiModelProperty("订单金额") |
| | | private BigDecimal orderMoney; |
| | | |
| | | @Excel(name = "优惠金额", width = 30) |
| | | @ApiModelProperty("优惠金额") |
| | | private BigDecimal discountMoney; |
| | | |
| | | @Excel(name = "应付金额", width = 30) |
| | | @ApiModelProperty("应付金额") |
| | | private BigDecimal receivableMoney; |
| | | |
| | | @Excel(name = "订单实际支付金额", width = 30) |
| | | @ApiModelProperty("订单实际支付金额") |
| | | private BigDecimal payMoney; |
| | | |
| | | @Excel(name = "订单来源", width = 30) |
| | | @ApiModelProperty("订单来源") |
| | | private String orderFrom; |
| | | |
| | | } |
| | |
| | | * @return MerTotalOrderVo |
| | | */ |
| | | MerTotalOrderVo totalMerOrder(@Param("shopId")Long shopId); |
| | | |
| | | |
| | | /** |
| | | * @description 平台获取商户订单记录 |
| | | * @author jqs |
| | | * @date 2023/7/5 20:17 |
| | | * @param page |
| | | * @param mgtShopAllOrderPageDto |
| | | * @return List<MgtShopAllOrderPageVo> |
| | | */ |
| | | List<MgtShopAllOrderPageVo> pageMgtShopAllOrder(Page page, @Param("param")MgtShopAllOrderPageDto mgtShopAllOrderPageDto); |
| | | } |
| | |
| | | BigDecimal unPaidMoney = mgtShopOrderPageVo.getReceivableMoney().subtract(mgtShopOrderPageVo.getPayMoney()); |
| | | mgtShopOrderPageVo.setUnPaidMoney(unPaidMoney == null ? zeroBig : unPaidMoney); |
| | | } |
| | | //处理商品信息 |
| | | List<MgtOrderGoodsPageVo> mgtOrderGoodsVoList; |
| | | String goodsString; |
| | | for(MgtShopOrderPageVo entity : shopOrderPageVoList){ |
| | | mgtOrderGoodsVoList = entity.getMgtOrderGoodsPageVoList(); |
| | | goodsString = mgtOrderGoodsVoList.stream() |
| | | .map(goods -> goods.getGoodsName() + "*" + goods.getBuyNum()) |
| | | .collect(Collectors.joining(";")); |
| | | entity.setGoodsInfo(goodsString); |
| | | } |
| | | } |
| | | return shopOrderPageVoList; |
| | | } |
| | |
| | | public MerTotalOrderVo totalMerOrder(MerBaseDto merBaseDto){ |
| | | return orderMapper.totalMerOrder(merBaseDto.getShopId()); |
| | | } |
| | | |
| | | /** |
| | | * @description 平台获取商户订单记录 |
| | | * @author jqs |
| | | * @date 2023/7/5 20:17 |
| | | * @param page |
| | | * @param mgtShopAllOrderPageDto |
| | | * @return List<MgtShopAllOrderPageVo> |
| | | */ |
| | | @Override |
| | | public List<MgtShopAllOrderPageVo> pageMgtShopAllOrder(Page page, MgtShopAllOrderPageDto mgtShopAllOrderPageDto){ |
| | | List<MgtShopAllOrderPageVo> shopAllOrderPageVoList = orderMapper.pageMgtShopAllOrder(page, mgtShopAllOrderPageDto); |
| | | if(!shopAllOrderPageVoList.isEmpty()){ |
| | | // 定义变量 |
| | | HashSet<Long> userIdSet = new HashSet<>(); |
| | | BigDecimal zeroBig = new BigDecimal("0.00"); |
| | | // 遍历列表,获取店铺 ID 和用户 ID |
| | | for (MgtShopAllOrderPageVo mgtShopOrderPageVo : shopAllOrderPageVoList) { |
| | | userIdSet.add(mgtShopOrderPageVo.getUserId()); |
| | | } |
| | | // 从远程服务获取店铺和用户信息 |
| | | Map<Long, MgtSimpleMemberVo> userMap = null; |
| | | if (userIdSet != null && !userIdSet.isEmpty()) { |
| | | String userJoinedString = String.join(",", userIdSet.stream().map(Object::toString).collect(Collectors.toList())); |
| | | MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); |
| | | mgtBaseBathDto.setIds(userJoinedString); |
| | | List<MgtSimpleMemberVo> simpleMemberVoList = remoteMemberService.listSimpleVoByIds(mgtBaseBathDto).getData(); |
| | | userMap = simpleMemberVoList.stream() |
| | | .collect(Collectors.toMap(MgtSimpleMemberVo::getUserId, Function.identity())); |
| | | } |
| | | // 遍历列表,设置店铺名称、用户名称和未支付金额 |
| | | for (MgtShopAllOrderPageVo mgtShopOrderPageVo : shopAllOrderPageVoList) { |
| | | if (userMap != null && !userMap.isEmpty()) { |
| | | if (userMap.get(mgtShopOrderPageVo.getUserId()) != null) { |
| | | mgtShopOrderPageVo.setUserInfo(userMap.get(mgtShopOrderPageVo.getUserId()).getNickName()+"("+userMap.get(mgtShopOrderPageVo.getUserId()).getUserMobile()+")"); |
| | | } |
| | | } |
| | | } |
| | | //处理商品信息 |
| | | List<MgtOrderGoodsPageVo> mgtOrderGoodsVoList; |
| | | String goodsString; |
| | | for(MgtShopAllOrderPageVo entity : shopAllOrderPageVoList){ |
| | | mgtOrderGoodsVoList = entity.getMgtOrderGoodsPageVoList(); |
| | | goodsString = mgtOrderGoodsVoList.stream() |
| | | .map(goods -> goods.getGoodsName() + "*" + goods.getBuyNum()) |
| | | .collect(Collectors.joining(";")); |
| | | entity.setGoodsInfo(goodsString); |
| | | } |
| | | } |
| | | return shopAllOrderPageVoList; |
| | | } |
| | | } |
| | |
| | | * @return MerTotalOrderVo |
| | | */ |
| | | MerTotalOrderVo totalMerOrder(MerBaseDto merBaseDto); |
| | | |
| | | /** |
| | | * @description 平台获取商户订单记录 |
| | | * @author jqs |
| | | * @date 2023/7/5 20:17 |
| | | * @param page |
| | | * @param mgtShopAllOrderPageDto |
| | | * @return List<MgtShopAllOrderPageVo> |
| | | */ |
| | | List<MgtShopAllOrderPageVo> pageMgtShopAllOrder(Page page, MgtShopAllOrderPageDto mgtShopAllOrderPageDto); |
| | | } |
| | |
| | | <result column="payMoney" property="payMoney"/> |
| | | <result column="orderFrom" property="orderFrom" /> |
| | | <result column="createTime" property="createTime" /> |
| | | <collection property="mgtOrderGoodsVoList" ofType="com.ruoyi.order.domain.vo.MerOrderGoodsPageVo"> |
| | | <collection property="mgtOrderGoodsVoList" ofType="com.ruoyi.order.domain.vo.MgtOrderGoodsPageVo"> |
| | | <result column="goodsName" property="goodsName"/> |
| | | <result column="buyNum" property="buyNum"/> |
| | | </collection> |
| | |
| | | <result column="orderMoney" property="orderMoney"/> |
| | | <result column="createTime" property="createTime"/> |
| | | <result column="receivableMoney" property="receivableMoney"/> |
| | | <result column="discountMoney" property="discountMoney"/> |
| | | <result column="payMoney" property="payMoney"/> |
| | | <result column="unPaidMoney" property="unPaidMoney"/> |
| | | <result column="orderFrom" property="orderFrom"/> |
| | | <result column="shopId" property="shopId"/> |
| | | <result column="verifyTime" property="verifyTime"/> |
| | | <collection property="mgtOrderGoodsPageVoList" ofType="com.ruoyi.order.domain.vo.MgtOrderGoodsPageVo"> |
| | | <result column="goodsName" property="goodsName"/> |
| | | <result column="buyNum" property="buyNum"/> |
| | | </collection> |
| | | </resultMap> |
| | | |
| | | <resultMap id="mgtShopAllOrderResultMap" type="com.ruoyi.order.domain.vo.MgtShopAllOrderPageVo"> |
| | | <result column="orderId" property="orderId"/> |
| | | <result column="orderNo" property="orderNo"/> |
| | | <result column="userId" property="userId"/> |
| | | <result column="orderMoney" property="orderMoney"/> |
| | | <result column="receivableMoney" property="receivableMoney"/> |
| | | <result column="discountMoney" property="discountMoney"/> |
| | | <result column="payMoney" property="payMoney"/> |
| | | <result column="orderFrom" property="orderFrom"/> |
| | | <collection property="mgtOrderGoodsPageVoList" ofType="com.ruoyi.order.domain.vo.MgtOrderGoodsPageVo"> |
| | | <result column="goodsName" property="goodsName"/> |
| | | <result column="buyNum" property="buyNum"/> |
| | |
| | | toc.pay_money payMoney, |
| | | toc.shop_id shopId, |
| | | toc.use_time verifyTime, |
| | | CASE toc.order_from WHEN 1 THEN '小程序' WHEN 3 THEN '线下创建' END 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 |
| | | WHERE toc.del_flag = 0 AND (toc.order_from = 1 OR toc.order_from = 3) |
| | |
| | | |
| | | <select id="boardOrderTotal" resultType="com.ruoyi.system.api.domain.vo.MgtBulletinBoardVo"> |
| | | SELECT |
| | | SUM(CASE WHEN order_status = 3 THEN pay_money ELSE 0 END) salesTotal, |
| | | SUM(CASE WHEN order_status = 2 THEN 1 ELSE 0 END) UnUseOrderTotal, |
| | | SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END) activityOrderTotal |
| | | IFNULL(SUM(CASE WHEN order_status = 3 THEN pay_money ELSE 0 END),0) salesTotal, |
| | | IFNULL(SUM(CASE WHEN order_status = 2 THEN 1 ELSE 0 END),0) UnUseOrderTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END),0) activityOrderTotal |
| | | FROM t_order |
| | | WHERE del_flag = 0 |
| | | </select> |
| | |
| | | <select id="getTotalOrderTotalOrderFrom" resultType="com.ruoyi.order.domain.vo.MgtTotalOrderTotalVo"> |
| | | SELECT |
| | | COUNT(order_id) orderTotal, |
| | | SUM(CASE WHEN order_from = 1 THEN 1 ELSE 0 END) onlineTotal, |
| | | SUM(CASE WHEN order_from = 3 THEN 1 ELSE 0 END) offlineTotal, |
| | | SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END) activityTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 1 THEN 1 ELSE 0 END),0) onlineTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 3 THEN 1 ELSE 0 END),0) offlineTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 2 THEN 1 ELSE 0 END),0) activityTotal, |
| | | IFNULL(SUM(order_money),0) orderMoney, |
| | | SUM(CASE WHEN order_from = 1 THEN order_money ELSE 0 END) onlineMoney, |
| | | SUM(CASE WHEN order_from = 3 THEN order_money ELSE 0 END) offlineMoney, |
| | | SUM(CASE WHEN order_from = 2 THEN order_money ELSE 0 END) activityMoney |
| | | IFNULL(SUM(CASE WHEN order_from = 1 THEN order_money ELSE 0 END),0) onlineMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 3 THEN order_money ELSE 0 END),0) offlineMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 2 THEN order_money ELSE 0 END),0) activityMoney |
| | | FROM t_order WHERE del_flag = 0 |
| | | <if test="param.shopId != null and param.shopId != ''"> |
| | | AND shop_id = #{param.shopId} |
| | |
| | | <select id="shopSalesTotal" resultType="java.math.BigDecimal"> |
| | | SELECT IFNULL(SUM(pay_money),0) |
| | | FROM t_order |
| | | WHERE o.del_flag = 0 |
| | | WHERE del_flag = 0 |
| | | <if test="param.shopId != null and param.shopId != ''"> |
| | | AND shop_id = #{param.shopId} |
| | | </if> |
| | |
| | | FROM t_order |
| | | WHERE del_flag = 0 AND shop_id = #{shopId} |
| | | </select> |
| | | |
| | | <select id="pageMgtShopAllOrder" resultMap="mgtShopAllOrderResultMap"> |
| | | SELECT |
| | | toc.order_id orderId, |
| | | toc.order_no orderNo, |
| | | toc.user_id userId, |
| | | tog.goods_name goodsName, |
| | | tog.buy_num buyNum, |
| | | toc.order_money orderMoney, |
| | | toc.discount_money discountMoney, |
| | | toc.receivable_money receivableMoney, |
| | | toc.pay_money payMoney, |
| | | CASE toc.order_from WHEN 1 THEN '小程序' WHEN 2 THEN CONCAT('秒杀活动(',toc.activity_name,')') WHEN 3 THEN '线下创建' END orderFrom |
| | | FROM t_order toc |
| | | INNER JOIN t_order_goods tog ON tog.order_id = toc.order_id |
| | | WHERE toc.del_flag = 0 AND (toc.order_from = 1 OR toc.order_from = 3) |
| | | <if test="param.orderFrom != null"> |
| | | AND toc.order_from = #{param.orderFrom} |
| | | </if> |
| | | <if test="param.orderStatus != null"> |
| | | AND toc.order_status = #{param.orderStatus} |
| | | </if> |
| | | <if test="param.orderNo != null and param.orderNo !=''"> |
| | | AND toc.order_no LIKE CONCAT('%',#{param.orderNo},'%') |
| | | </if> |
| | | <if test="param.shopId != null and param.shopId != ''"> |
| | | AND toc.shop_id = #{param.shopId} |
| | | </if> |
| | | <if test="param.startOrderDate != null and param.startOrderDate != '' "> |
| | | AND toc.create_time >= #{param.startOrderDate} |
| | | </if> |
| | | <if test="param.endOrderDate != null and param.endOrderDate != '' "> |
| | | AND toc.create_time <= #{param.endOrderDate} |
| | | </if> |
| | | ORDER BY toc.create_time DESC |
| | | </select> |
| | | </mapper> |
| | |
| | | return R.ok(shopIdList); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * @description 获取未回复数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:49 |
| | | * @param |
| | | * @return R<Integer> |
| | | */ |
| | | @PostMapping("/getUnReplaySuggestVo") |
| | | public R<Integer> getUnReplaySuggestVo() |
| | | { |
| | | Integer count = shopSuggestService.getUnReplaySuggestVo(); |
| | | return R.ok(count); |
| | | } |
| | | } |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtShop", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出商户列表") |
| | | public void exportPageMgtShop(@RequestBody MgtShopPageDto mgtShopPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtShop(MgtShopPageDto mgtShopPageDto, HttpServletResponse response) { |
| | | Page<MgtShopPageVo> page = new Page<>(); |
| | | page.setSize(2000); |
| | | page.setCurrent(1); |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtShopSuggest", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出商户建议列表") |
| | | public void exportPageMgtShopSuggest(@RequestBody MgtShopSuggestPageDto mgtShopSuggestPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtShopSuggest(MgtShopSuggestPageDto mgtShopSuggestPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopSuggestPageDto.setUserId(userId); |
| | | Page<MgtShopSuggestPageVo> page = new Page<>(); |
| | |
| | | private Date createTime; |
| | | |
| | | @ApiModelProperty("跟踪类型1电话2手动") |
| | | private Integer followType; |
| | | private String followType; |
| | | |
| | | @ApiModelProperty("电话时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | |
| | | package com.ruoyi.shop.service.impl.shop; |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | |
| | | shopSuggest.setSuggestTags(mgtTagShopSuggestDto.getSuggestTags()); |
| | | this.saveOrUpdate(shopSuggest); |
| | | } |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | @Override |
| | | public Integer getUnReplaySuggestVo(){ |
| | | LambdaQueryWrapper<ShopSuggest> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(ShopSuggest::getDelFlag,0); |
| | | queryWrapper.eq(ShopSuggest::getReplayFlag,0); |
| | | return this.count(queryWrapper); |
| | | } |
| | | } |
| | |
| | | * @date 2023/6/11 17:34 |
| | | */ |
| | | void mgtEditShopSuggestTag(MgtTagShopSuggestDto mgtTagShopSuggestDto); |
| | | |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | Integer getUnReplaySuggestVo(); |
| | | } |
| | |
| | | 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} AND tmr.task_date = #{param.taskDate} |
| | | WHERE tmt.del_flag = 0 AND tmt.user_id = #{param.memberUserId} AND tmt.task_date = #{param.taskDate} |
| | | ORDER BY tmt.task_date DESC |
| | | </select> |
| | | |
| | |
| | | Activeness activeness = activenessService.getActivenessByName(name); |
| | | return R.ok(activeness); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | * @Date 2023/6/6 9:14 |
| | | * @Version 1.0 |
| | | */ |
| | | @Api(value = "平台端配置相关接口", tags = "平台端配置相关接口", description = "平台端配置相关接口") |
| | | @Api(value = "管理后台配置相关接口", tags = "管理后台配置相关接口", description = "管理后台配置相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/config") |
| | | public class MgtConfigController { |
| | |
| | | MgtBulletinBoardVo bulletinBoard = customConfigService.getBulletinBoard(); |
| | | return R.ok(bulletinBoard); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | * @description: TODO |
| | | * @date 2023 2023/6/11 18:36 |
| | | */ |
| | | @Api(value = "平台端员工相关接口", tags = "平台端员工相关接口", description = "平台端员工相关接口") |
| | | @Api(value = "管理后台员工相关接口", tags = "管理后台员工相关接口", description = "管理后台员工相关接口") |
| | | @RestController |
| | | @RequestMapping("/mgt/staff") |
| | | public class MgtStaffController { |
| | |
| | | |
| | | @RequestMapping(value = "/exportPageMgtStaffSuggest", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出员工建议列表") |
| | | public void exportPageMgtStaffSuggest(@RequestBody MgtStaffSuggestPageDto mgtStaffSuggestPageDto, HttpServletResponse response) { |
| | | public void exportPageMgtStaffSuggest(MgtStaffSuggestPageDto mgtStaffSuggestPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtStaffSuggestPageDto.setUserId(userId); |
| | | Page<MgtStaffSuggestPageVo> page = new Page<>(); |
| | |
| | | userService.editUserMenu(userMenuEditDto); |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * @description 冻结用户 |
| | | * @author jqs |
| | | * @date 2023/6/29 17:20 |
| | | * @param userId |
| | | * @return R<Activeness> |
| | | */ |
| | | @PostMapping("/frozenUser") |
| | | public R frozenUser(@RequestBody Long userId) |
| | | { |
| | | userService.frozenUser(userId); |
| | | return R.ok(); |
| | | } |
| | | } |
| | |
| | | * @date 2023/6/11 18:49 |
| | | */ |
| | | void mgtEditStaffSuggestTag(MgtTagStaffSuggestDto mgtTagStaffSuggestDto); |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | Integer getUnReplaySuggestVo(); |
| | | } |
| | |
| | | import com.ruoyi.system.domain.vo.MgtAllCustomConfigVo; |
| | | import com.ruoyi.system.domain.vo.MgtOperLogPageVo; |
| | | import com.ruoyi.system.mapper.config.CustomConfigMapper; |
| | | import com.ruoyi.system.service.config.ActivenessService; |
| | | import com.ruoyi.system.service.config.AdvertService; |
| | | import com.ruoyi.system.service.config.CustomConfigService; |
| | | import com.ruoyi.system.service.config.RecommendCooperationService; |
| | | import com.ruoyi.system.service.config.*; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import javax.annotation.Resource; |
| | |
| | | |
| | | @Resource |
| | | private RemoteActivityService remoteActivityService; |
| | | |
| | | @Resource |
| | | private StaffSuggestService staffSuggestService; |
| | | |
| | | /** |
| | | * @param key |
| | |
| | | // 获取活动信息 |
| | | MgtBulletinBoardVo mgtBulletinBoardVoActivity = remoteActivityService.boardActivityTotal().getData(); |
| | | mgtBulletinBoardVo.setActivityUserTotal(mgtBulletinBoardVoActivity.getActivityUserTotal()); |
| | | //待回复建议数量 |
| | | Integer countA = remoteMemberService.getUnReplaySuggestVo().getData(); |
| | | Integer countB = remoteShopService.getUnReplaySuggestVo().getData(); |
| | | Integer countC = staffSuggestService.getUnReplaySuggestVo(); |
| | | mgtBulletinBoardVo.setUnReplaySuggestTotal(countA+countB+countC); |
| | | // 返回 MgtBulletinBoardVo 对象 |
| | | return mgtBulletinBoardVo; |
| | | } |
| | |
| | | package com.ruoyi.system.service.impl.config; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.common.core.utils.DateUtils; |
| | | import com.ruoyi.common.core.utils.StringUtils; |
| | |
| | | staffSuggest.setSuggestTags(mgtTagStaffSuggestDto.getSuggestTags()); |
| | | this.saveOrUpdate(staffSuggest); |
| | | } |
| | | |
| | | /** |
| | | * @description 获取会员未回复建议数量 |
| | | * @author jqs |
| | | * @date 2023/7/5 12:46 |
| | | * @param |
| | | * @return Integer |
| | | */ |
| | | @Override |
| | | public Integer getUnReplaySuggestVo(){ |
| | | LambdaQueryWrapper<StaffSuggest> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(StaffSuggest::getDelFlag,0); |
| | | queryWrapper.eq(StaffSuggest::getReplayFlag,0); |
| | | return this.count(queryWrapper); |
| | | } |
| | | } |
| | |
| | | public void updateOnlyUser(SysUser sysUser){ |
| | | userMapper.updateUser(sysUser); |
| | | } |
| | | |
| | | /** |
| | | * @description |
| | | * @author jqs |
| | | * @date 2023/7/5 21:24 |
| | | * @param userId |
| | | * @return void |
| | | */ |
| | | @Override |
| | | public void frozenUser(Long userId){ |
| | | SysUser sysUser = this.selectUserById(userId); |
| | | sysUser.setStatus("1"); |
| | | userMapper.updateUser(sysUser); |
| | | } |
| | | } |
| | |
| | | * @return void |
| | | */ |
| | | void updateOnlyUser(SysUser sysUser); |
| | | |
| | | /** |
| | | * @description 冻结用户 |
| | | * @author jqs |
| | | * @date 2023/7/5 21:24 |
| | | * @param userId |
| | | * @return void |
| | | */ |
| | | void frozenUser(Long userId); |
| | | } |