| | |
| | | List<MgtLotteryEventPageVo> voList = this.baseMapper.pageMgtLotteryEvent(dto); |
| | | //填充创建对象 |
| | | voList.forEach(x->{ |
| | | if (x.getActivityType()!=6){ |
| | | if (null == x.getShopId()){ |
| | | x.setCreateObject("平台创建"); |
| | | }else { |
| | | //线下抽奖,获取门店名称 |
| | |
| | | <select id="getShopWinningRecord" resultType="map"> |
| | | select aa.user_id, |
| | | DATE_FORMAT(any_value(aa.create_time), '%Y-%m-%d %H:%i') as create_time, |
| | | GROUP_CONCAT(CONCAT(aa.prize_type, '_', aa.object_id, '_', aa.object_name, '_', aa.number)) as content |
| | | GROUP_CONCAT( COALESCE(aa.prize_type, ''), '_', |
| | | COALESCE(aa.object_id, ''), '_', |
| | | COALESCE(aa.object_name, ''), '_', |
| | | COALESCE(aa.number, '')) as content |
| | | from (select * |
| | | from t_user_lottery_event |
| | | where prize_type != 5 and lottery_event_id = #{id} |
| | |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import org.springframework.validation.annotation.Validated; |
| | | 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 org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | |
| | | //获取抽奖类型优惠券列表 |
| | | @RequestMapping(value = "/getLotteryEventCouponList", method = RequestMethod.POST) |
| | | @ApiOperation(value = "平台获取抽奖类型优惠券列表【2.0】") |
| | | public R<List<LotteryEventCouponListVO>> getLotteryEventCouponList() { |
| | | return R.ok( couponService.getLotteryEventCouponList()); |
| | | public R<List<LotteryEventCouponListVO>> getLotteryEventCouponList(@RequestParam(value = "shopId",required = false) Long shopId) { |
| | | return R.ok( couponService.getLotteryEventCouponList(shopId)); |
| | | } |
| | | |
| | | } |
| | |
| | | * |
| | | * @return |
| | | */ |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponList(); |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponList(@Param("shopId") Long shopId); |
| | | |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponListByShopId(@Param("shopId") String shopId); |
| | | } |
| | |
| | | * 平台获取抽奖类型优惠券列表 |
| | | * @return |
| | | */ |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponList(); |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponList(Long shopId); |
| | | |
| | | List<LotteryEventCouponListVO> getLotteryEventCouponListByShopId(String shopId); |
| | | } |
| | |
| | | } |
| | | |
| | | @Override |
| | | public List<LotteryEventCouponListVO> getLotteryEventCouponList() { |
| | | return this.getBaseMapper().getLotteryEventCouponList(); |
| | | public List<LotteryEventCouponListVO> getLotteryEventCouponList(Long shopId) { |
| | | return this.getBaseMapper().getLotteryEventCouponList(shopId); |
| | | } |
| | | |
| | | @Override |
| | |
| | | from |
| | | t_coupon |
| | | where |
| | | (del_flag = 0 |
| | | and |
| | | coupon_status = 1 |
| | | and |
| | | send_type = 3 |
| | | and |
| | | coupon_from = 1 ) |
| | | <if test="shopId != null"> |
| | | or ( |
| | | del_flag = 0 |
| | | and |
| | | coupon_status = 1 |
| | | and |
| | | send_type = 3 |
| | | and |
| | | coupon_from = 1 |
| | | coupon_from = 2 |
| | | and |
| | | audit_status = 2 |
| | | and |
| | | shop_id = #{shopId} |
| | | ) |
| | | </if> |
| | | |
| | | </select> |
| | | <select id="getLotteryEventCouponListByShopId" |
| | |
| | | public R refundOrderBySys(@RequestBody CancelOrderDTO dto) { |
| | | return orderService.refundOrderBySys(dto); |
| | | } |
| | | //todo 分页获取三方订单 |
| | | //todo 导出三方订单 |
| | | |
| | | |
| | | //分页获取三方订单 |
| | | @RequestMapping(value = "/pageMgtThirdOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "分页获取三方订单") |
| | | public R<Page<MgtThirdOrderPageVo>> pageMgtThirdOrder(@RequestBody MgtThirdOrderPageDto dto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | dto.setUserId(userId); |
| | | Page<MgtThirdOrderPageVo> page = new Page<>(); |
| | | page.setSize(dto.getPageSize()); |
| | | page.setCurrent(dto.getPageNum()); |
| | | List<MgtThirdOrderPageVo> thirdOrderPageVoList = orderService.pageMgtThirdOrder(page,dto); |
| | | return R.ok(page.setRecords(thirdOrderPageVoList)); |
| | | } |
| | | // 导出三方订单 |
| | | @RequestMapping(value = "/exportPageMgtThirdOrder", method = RequestMethod.POST) |
| | | @ApiOperation(value = "导出三方订单列表") |
| | | public void exportPageMgtThirdOrder( MgtThirdOrderPageDto mgtShopOrderPageDto, HttpServletResponse response) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | mgtShopOrderPageDto.setUserId(userId); |
| | | Page<MgtThirdOrderPageVo> page = new Page<>(); |
| | | page.setSize(Integer.MAX_VALUE); |
| | | page.setCurrent(1); |
| | | List<MgtThirdOrderPageVo> mgtActivityOrderPageVos = orderService.pageMgtThirdOrder(page,mgtShopOrderPageDto); |
| | | ExcelUtil<MgtThirdOrderPageVo> util = new ExcelUtil<MgtThirdOrderPageVo>(MgtThirdOrderPageVo.class); |
| | | util.exportExcel(response, mgtActivityOrderPageVos, "秒杀订单列表", "秒杀订单列表"); |
| | | } |
| | | |
| | | } |
| | |
| | | import com.ruoyi.common.core.domain.R; |
| | | import com.ruoyi.common.core.utils.poi.ExcelUtil; |
| | | import com.ruoyi.common.security.utils.SecurityUtils; |
| | | import com.ruoyi.order.domain.vo.MgtPlTotalActivityTotalVo; |
| | | import com.ruoyi.order.domain.vo.MgtTotalActivityTotalVo; |
| | | import com.ruoyi.order.domain.vo.MgtTotalDataTotalVo; |
| | | import com.ruoyi.order.domain.vo.MgtTotalOrderTotalVo; |
| | | import com.ruoyi.order.domain.vo.*; |
| | | import com.ruoyi.order.service.order.OrderService; |
| | | import com.ruoyi.system.api.domain.dto.MgtBasePlatformDto; |
| | | import com.ruoyi.system.api.domain.dto.MgtBaseShopDto; |
| | |
| | | } |
| | | |
| | | |
| | | @RequestMapping(value = "/getPlTotalThirdOrderStatics", method = RequestMethod.POST) |
| | | @ApiOperation(value = "获取三方订单统计【2.0】") |
| | | public R<MgtPlTotalThirdOrderStaticsVO> getPlTotalThirdOrderStatics(@RequestBody MgtBasePlatformDto mgtBasePlatformDto) { |
| | | Long userId = SecurityUtils.getUserId(); |
| | | MgtPlTotalThirdOrderStaticsVO totalActivityTotal = orderService.getPlTotalThirdOrderStatics(mgtBasePlatformDto); |
| | | return R.ok(totalActivityTotal); |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.dto; |
| | | |
| | | import com.ruoyi.system.api.domain.dto.MgtPageDto; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.time.LocalDateTime; |
| | | |
| | | @Data |
| | | public class MgtThirdOrderPageDto extends MgtPageDto { |
| | | @ApiModelProperty(value = "关键词") |
| | | private String keyword; |
| | | |
| | | |
| | | @ApiModelProperty(value = "商户id") |
| | | private Long shopId; |
| | | |
| | | @ApiModelProperty(value = "下单时间-范围开始") |
| | | private LocalDateTime createTimeBegin; |
| | | @ApiModelProperty(value = "下单时间-范围结束") |
| | | private LocalDateTime createTimeEnd; |
| | | |
| | | @ApiModelProperty(value = "订单来源1.店铺商品2.平台秒杀活动3.线下创建") |
| | | private Integer orderFrom; |
| | | |
| | | @ApiModelProperty(value = "核销时间-范围开始") |
| | | private LocalDateTime useTimeBegin; |
| | | @ApiModelProperty(value = "核销时间-范围结束") |
| | | private LocalDateTime useTimeEnd; |
| | | |
| | | |
| | | @ApiModelProperty(value = "keyword转换用户ids",hidden = true) |
| | | private String userIds; |
| | | |
| | | @ApiModelProperty(value = "code转换商户ids",hidden = true) |
| | | private String shopIds; |
| | | |
| | | @ApiModelProperty(value="店铺地址省code") |
| | | private String shopProvinceCode; |
| | | |
| | | @ApiModelProperty(value="店铺地址市code") |
| | | private String shopCityCode; |
| | | |
| | | @ApiModelProperty(value="店铺地址区code") |
| | | private String shopAreaCode; |
| | | |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | |
| | | @Data |
| | | public class MgtPlTotalThirdOrderStaticsVO { |
| | | @ApiModelProperty(value = "总订单数") |
| | | private Integer orderTotal; |
| | | @ApiModelProperty(value = "美团订单") |
| | | private Integer meituan; |
| | | |
| | | @ApiModelProperty(value = "抖音") |
| | | private Integer douyin; |
| | | |
| | | @ApiModelProperty(value = "快手") |
| | | private Integer kuaishou; |
| | | |
| | | @ApiModelProperty(value = "小鹅云") |
| | | private Integer xiaoeyun; |
| | | |
| | | @ApiModelProperty(value = "总订单数") |
| | | private BigDecimal orderTotalMoney; |
| | | @ApiModelProperty(value = "美团订单") |
| | | private BigDecimal meituanMoney; |
| | | |
| | | @ApiModelProperty(value = "抖音") |
| | | private BigDecimal douyinMoney; |
| | | |
| | | @ApiModelProperty(value = "快手") |
| | | private BigDecimal kuaishouMoney; |
| | | |
| | | @ApiModelProperty(value = "小鹅云") |
| | | private BigDecimal xiaoeyunMoney; |
| | | |
| | | } |
New file |
| | |
| | | package com.ruoyi.order.domain.vo; |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat; |
| | | import com.fasterxml.jackson.databind.annotation.JsonSerialize; |
| | | import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; |
| | | import com.ruoyi.common.core.annotation.Excel; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.Data; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.Date; |
| | | |
| | | @Data |
| | | public class MgtThirdOrderPageVo { |
| | | @Excel(name = "订单号", width = 30, sort = 1) |
| | | @ApiModelProperty(value="订单编号") |
| | | private String orderNo; |
| | | |
| | | @Excel(name = "订单来源", width = 30, sort = 1) |
| | | @ApiModelProperty(value="订单来源") |
| | | private String orderFrom; |
| | | |
| | | @Excel(name = "商品/套餐名称", width = 30, sort = 1) |
| | | @ApiModelProperty(value="商品/套餐名称") |
| | | private String goodsName; |
| | | |
| | | @Excel(name = "订单金额", width = 30, sort = 11) |
| | | @ApiModelProperty(value="订单金额") |
| | | @JsonSerialize(using = ToStringSerializer.class) |
| | | private BigDecimal orderMoney; |
| | | |
| | | |
| | | @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", sort = 14) |
| | | @ApiModelProperty(value="有效期") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date validityTime; |
| | | |
| | | @Excel(name = "核销门店", width = 30, sort = 13) |
| | | @ApiModelProperty(value="核销门店") |
| | | private String shopName; |
| | | |
| | | @Excel(name = "核销时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", sort = 14) |
| | | @ApiModelProperty(value="核销时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private Date verifyTime; |
| | | @ApiModelProperty(value="核销店铺id") |
| | | private Long shopId; |
| | | |
| | | } |
| | |
| | | * @return MerMemberSimpleTotalVo |
| | | */ |
| | | MerMemberSimpleTotalVo getMerMemberSimpleTotalVo(@Param("param") MerBaseDto merBaseDto); |
| | | |
| | | /** |
| | | * 查询第三方订单 |
| | | * @param page |
| | | * @param dto |
| | | * @return |
| | | */ |
| | | List<MgtThirdOrderPageVo> pageMgtThirdOrder(Page<MgtThirdOrderPageVo> page,@Param("param") MgtThirdOrderPageDto dto); |
| | | |
| | | /** |
| | | * 统计三方订单 |
| | | * @param mgtBasePlatformDto |
| | | * @return |
| | | */ |
| | | MgtPlTotalThirdOrderStaticsVO getPlTotalThirdOrderStatics(@Param("param")MgtBasePlatformDto mgtBasePlatformDto); |
| | | } |
| | |
| | | return R.ok(); |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public List<MgtThirdOrderPageVo> pageMgtThirdOrder(Page<MgtThirdOrderPageVo> page, MgtThirdOrderPageDto dto) { |
| | | //如果区域代码不为null获取对应的商户id |
| | | if (StringUtils.isNotBlank(dto.getKeyword()) || StringUtils.isNotBlank(dto.getShopProvinceCode()) || StringUtils.isNotBlank(dto.getShopCityCode()) || StringUtils.isNotBlank(dto.getShopAreaCode())) { |
| | | MgtShopIdByCodeDto mgtShopIdByCodeDto = new MgtShopIdByCodeDto(); |
| | | mgtShopIdByCodeDto.setShopProvinceCode(dto.getShopProvinceCode()); |
| | | mgtShopIdByCodeDto.setShopCityCode(dto.getShopCityCode()); |
| | | mgtShopIdByCodeDto.setShopAreaCode(dto.getShopAreaCode()); |
| | | MgtShopIdByCodeVo mgtShopIdByCodeVo = remoteShopService.getShopIdByCode(mgtShopIdByCodeDto).getData(); |
| | | if (StringUtils.isNotBlank(mgtShopIdByCodeVo.getShopIds())) { |
| | | dto.setShopIds(mgtShopIdByCodeVo.getShopIds()); |
| | | } |
| | | } |
| | | //如果关键词不为null获取对应的用户id |
| | | if (StringUtils.isNotBlank(dto.getKeyword())) { |
| | | MgtUserIdByKeywordDto mgtUserIdByKeywordDto = new MgtUserIdByKeywordDto(); |
| | | mgtUserIdByKeywordDto.setKeyword(dto.getKeyword()); |
| | | MgtUserIdByKeywordVo mgtUserIdByKeywordVo = remoteMemberService.getUserIdByKeyword(mgtUserIdByKeywordDto).getData(); |
| | | if (StringUtils.isNotBlank(mgtUserIdByKeywordVo.getUserIds())) { |
| | | dto.setUserIds(mgtUserIdByKeywordVo.getUserIds()); |
| | | } |
| | | } |
| | | //数据权限 |
| | | List<Long> userId = remoteUserService.getScopeOfAuthorityUserId(); |
| | | BoardMemberTotalDto boardMemberTotalDto = new BoardMemberTotalDto(); |
| | | boardMemberTotalDto.setUserIds(userId); |
| | | List<Shop> shops = remoteShopService.getShopBySysUserIds(boardMemberTotalDto); |
| | | if (!shops.isEmpty()) { |
| | | List<Long> collect = shops.stream().map(Shop::getShopId).collect(Collectors.toList()); |
| | | String join = collect.stream().map(Object::toString).collect(Collectors.joining(",")); |
| | | String shopIds = dto.getShopIds(); |
| | | if(StringUtils.isNotEmpty(shopIds)){ |
| | | shopIds = shopIds + "," + join; |
| | | }else{ |
| | | shopIds = join; |
| | | } |
| | | dto.setShopIds(shopIds); |
| | | } |
| | | |
| | | // 从数据库中获取第三方订单列表 |
| | | List<MgtThirdOrderPageVo> thirdOrderPageVoList = orderMapper.pageMgtThirdOrder(page, dto); |
| | | // 如果列表不为空 |
| | | if (!thirdOrderPageVoList.isEmpty()) { |
| | | // 定义变量 |
| | | HashSet<Long> shopIdSet = new HashSet<>(); |
| | | BigDecimal zeroBig = new BigDecimal("0.00"); |
| | | // 遍历列表,获取店铺 ID 和用户 ID |
| | | for (MgtThirdOrderPageVo mgtActivityOrderPageVo : thirdOrderPageVoList) { |
| | | if(mgtActivityOrderPageVo.getShopId()!=null){ |
| | | shopIdSet.add(mgtActivityOrderPageVo.getShopId()); |
| | | } |
| | | } |
| | | // 将店铺 ID 和用户 ID 转换为逗号分隔的字符串 |
| | | String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList())); |
| | | // 从远程服务获取店铺和用户信息 |
| | | MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); |
| | | mgtBaseBathDto.setIds(shopJoinedString); |
| | | List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData(); |
| | | Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream() |
| | | .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity())); |
| | | mgtBaseBathDto = new MgtBaseBathDto(); |
| | | // 遍历列表,设置店铺名称 |
| | | for (MgtThirdOrderPageVo mgtActivityOrderPageVo : thirdOrderPageVoList) { |
| | | if(mgtActivityOrderPageVo.getShopId()!=null){ |
| | | MgtSimpleShopVo mgtSimpleShopVo = shopMap.get(mgtActivityOrderPageVo.getShopId()); |
| | | mgtActivityOrderPageVo.setShopName(null == mgtSimpleShopVo ? "" : mgtSimpleShopVo.getShopName()); |
| | | } |
| | | } |
| | | } |
| | | |
| | | return thirdOrderPageVoList; |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public MgtPlTotalThirdOrderStaticsVO getPlTotalThirdOrderStatics(MgtBasePlatformDto mgtBasePlatformDto) { |
| | | MgtPlTotalThirdOrderStaticsVO vo = new MgtPlTotalThirdOrderStaticsVO(); |
| | | //数据权限 |
| | | List<Long> userIdList = mgtBasePlatformDto.getUserIdList(); |
| | | List<Long> userIds = remoteUserService.getScopeOfAuthorityUserId(); |
| | | if(null != userIds){ |
| | | if(null != userIdList){ |
| | | userIdList.addAll(userIds); |
| | | }else{ |
| | | userIdList = userIds; |
| | | } |
| | | mgtBasePlatformDto.setUserIdList(userIdList); |
| | | } |
| | | List<Long> shopIdList = remoteShopService.listShopIdByPlTotal(mgtBasePlatformDto).getData(); |
| | | if (mgtBasePlatformDto.getUserId() != null || StringUtils.isNotBlank(mgtBasePlatformDto.getShopProvinceCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopCityCode()) || StringUtils.isNotBlank(mgtBasePlatformDto.getShopAreaCode())) { |
| | | if(shopIdList==null||shopIdList.isEmpty()){ |
| | | return vo; |
| | | } |
| | | } |
| | | if(mgtBasePlatformDto.getShopId()!=null){ |
| | | shopIdList = new ArrayList<>(); |
| | | shopIdList.add(mgtBasePlatformDto.getShopId()); |
| | | } |
| | | mgtBasePlatformDto.setShopIdList(shopIdList); |
| | | // 从数据库中获取第三方订单统计 |
| | | vo = orderMapper.getPlTotalThirdOrderStatics(mgtBasePlatformDto); |
| | | return vo; |
| | | } |
| | | } |
| | |
| | | * @return |
| | | */ |
| | | R refundOrderBySys(CancelOrderDTO dto); |
| | | |
| | | /** |
| | | * 三方订单 |
| | | * @param page |
| | | * @param dto |
| | | * @return |
| | | */ |
| | | List<MgtThirdOrderPageVo> pageMgtThirdOrder(Page<MgtThirdOrderPageVo> page, MgtThirdOrderPageDto dto); |
| | | |
| | | /** |
| | | * 三方订单统计 |
| | | * @param mgtBasePlatformDto |
| | | * @return |
| | | */ |
| | | MgtPlTotalThirdOrderStaticsVO getPlTotalThirdOrderStatics(MgtBasePlatformDto mgtBasePlatformDto); |
| | | } |
| | |
| | | toc.pay_money payMoney, |
| | | CASE WHEN toc.unbinding_flag = 0 THEN toc.shop_id WHEN toc.unbinding_flag = 1 AND toc.order_from = 1 THEN toc.shop_id WHEN toc.order_status = 3 THEN toc.shop_id ELSE NULL END shopId, |
| | | toc.use_time verifyTime, |
| | | CASE toc.order_from WHEN 1 THEN '小程序' WHEN 2 THEN '秒杀活动' WHEN 3 THEN '线下创建' END orderFrom, |
| | | CASE toc.order_from |
| | | WHEN 1 THEN '小程序' |
| | | WHEN 2 THEN '秒杀活动' |
| | | WHEN 3 THEN '线下创建' |
| | | WHEN 4 THEN '抽奖' |
| | | WHEN 5 THEN '美团' |
| | | WHEN 6 THEN '抖音' |
| | | WHEN 7 THEN '快手' |
| | | END orderFrom, |
| | | #{param.keyword} AS keyword |
| | | FROM t_order toc |
| | | WHERE toc.del_flag = 0 AND (toc.order_from = 1 OR toc.order_from = 3) |
| | | WHERE toc.del_flag = 0 AND toc.order_from != 2 -- 不查找秒杀活动的订单 |
| | | <if test="param.orderStatus != null"> |
| | | AND toc.order_status = #{param.orderStatus} |
| | | </if> |
| | |
| | | <select id="getPlTotalOrderTotalOrderFrom" resultType="com.ruoyi.order.domain.vo.MgtTotalOrderTotalVo"> |
| | | SELECT |
| | | COUNT(order_id) orderTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 1 THEN 1 ELSE 0 END),0) onlineTotal, |
| | | IFNULL(SUM(CASE WHEN order_from in (1,5,6,7) 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(CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END),0) orderMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 1 THEN (CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END) ELSE 0 END),0) onlineMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = in (1,5,6,7) THEN (CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END) ELSE 0 END),0) onlineMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 3 THEN (CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END) ELSE 0 END),0) offlineMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 2 THEN (CASE WHEN null = change_receivable_money or change_receivable_money = 0 THEN receivable_money ELSE change_receivable_money END) ELSE 0 END),0) activityMoney |
| | | FROM t_order WHERE del_flag = 0 AND order_status = 3 |
| | |
| | | FROM t_order toc |
| | | WHERE toc.del_flag = 0 AND toc.user_id = #{param.userId} AND toc.shop_id = #{param.shopId} AND toc.order_status IN (2,3) |
| | | </select> |
| | | <select id="pageMgtThirdOrder" resultType="com.ruoyi.order.domain.vo.MgtThirdOrderPageVo"> |
| | | SELECT |
| | | toc.order_no orderNo, |
| | | CASE toc.order_from |
| | | WHEN 1 THEN '小程序' |
| | | WHEN 2 THEN '秒杀活动' |
| | | WHEN 3 THEN '线下创建' |
| | | WHEN 4 THEN '抽奖' |
| | | WHEN 5 THEN '美团' |
| | | WHEN 6 THEN '抖音' |
| | | WHEN 7 THEN '快手' |
| | | END orderFrom, |
| | | tog.goods_name goodsName, |
| | | toc.order_money orderMoney, |
| | | toc.validity_time validityTime, |
| | | CASE WHEN toc.order_status = 3 THEN toc.shop_id ELSE NULL END shopId, |
| | | toc.use_time verifyTime |
| | | 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 in (5,6,7) |
| | | <if test="param.shopId != null and param.shopId != ''"> |
| | | AND toc.shop_id = #{param.shopId} |
| | | </if> |
| | | <if test="param.shopIds != null and param.shopIds != ''"> |
| | | AND FIND_IN_SET(toc.shop_id, #{param.shopIds}) |
| | | </if> |
| | | <if test="param.keyword != null and param.keyword != ''"> |
| | | AND (toc.order_no LIKE CONCAT('%',#{param.keyword},'%') OR toc.activity_name LIKE CONCAT('%',#{param.keyword},'%') OR FIND_IN_SET(toc.user_id, #{param.userIds}) > 0) |
| | | </if> |
| | | <if test="param.createTimeBegin != null and param.createTimeBegin != ''"> |
| | | AND Date(toc.create_time) >= #{param.createTimeBegin} |
| | | </if> |
| | | <if test="param.createTimeEnd != null and param.createTimeEnd != ''"> |
| | | AND Date(toc.create_time) <= #{param.createTimeEnd} |
| | | </if> |
| | | <if test="param.verifyStartTime != null and param.verifyStartTime != ''"> |
| | | AND Date(toc.use_time) >= #{param.verifyStartTime} |
| | | </if> |
| | | <if test="param.verifyEndTime != null and param.verifyEndTime != ''"> |
| | | AND Date(toc.use_time) <= #{param.verifyEndTime} |
| | | </if> |
| | | ORDER BY toc.create_time DESC |
| | | </select> |
| | | <select id="getPlTotalThirdOrderStatics" |
| | | resultType="com.ruoyi.order.domain.vo.MgtPlTotalThirdOrderStaticsVO"> |
| | | SELECT |
| | | -- 订单数量统计 |
| | | COUNT(order_id) AS orderTotal, |
| | | IFNULL(SUM(CASE WHEN order_from = 5 THEN 1 ELSE 0 END), 0) AS meituan, |
| | | IFNULL(SUM(CASE WHEN order_from = 6 THEN 1 ELSE 0 END), 0) AS douyin, |
| | | IFNULL(SUM(CASE WHEN order_from = 7 THEN 1 ELSE 0 END), 0) AS kuaishou, |
| | | IFNULL(SUM(CASE WHEN order_from = 8 THEN 1 ELSE 0 END), 0) AS xiaoeyun, |
| | | |
| | | -- 订单金额统计(取order_money) |
| | | IFNULL(SUM(order_money), 0) AS orderTotalMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 5 THEN order_money ELSE 0 END), 0) AS meituanMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 6 THEN order_money ELSE 0 END), 0) AS douyinMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 7 THEN order_money ELSE 0 END), 0) AS kuaishouMoney, |
| | | IFNULL(SUM(CASE WHEN order_from = 8 THEN order_money ELSE 0 END), 0) AS xiaoeyunMoney |
| | | FROM |
| | | t_order |
| | | WHERE |
| | | del_flag = 0 -- 未删除 |
| | | AND order_from IN (5, 6, 7, 8) -- 仅统计三方平台订单 |
| | | -- 可选条件:按商户筛选 |
| | | <if test="param.shopIdList != null and param.shopIdList.size() > 0"> |
| | | AND shop_id IN |
| | | <foreach collection="param.shopIdList" item="item" open="(" separator="," close=")"> |
| | | #{item} |
| | | </foreach> |
| | | </if> |
| | | </select> |
| | | </mapper> |
| | |
| | | sysUser.setNickName(mgtStaffEditDto.getStaffName()); |
| | | sysUser.setAvatar(mgtStaffEditDto.getStaffAvatar()); |
| | | sysUser.setEmail(mgtStaffEditDto.getStaffEmail()); |
| | | sysUser.setDeptId(mgtStaffEditDto.getDeptId()); |
| | | sysUserService.updateOnlyUser(sysUser); |
| | | }else{ |
| | | if(sysStaffSame!=null){ |