This commit is contained in:
77
2024-05-18 18:31:15 +08:00
parent 76529ba3df
commit 1bcfe58cfb
11 changed files with 103 additions and 45 deletions

View File

@@ -13,6 +13,8 @@ import com.ruoyi.common.core.validate.AddGroup;
import com.ruoyi.common.core.validate.EditGroup;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.dto.admin.groupOrder.GroupOrderAdminVo;
import com.ruoyi.xq.dto.app.common.IdReq;
import com.ruoyi.xq.service.GroupOrderService;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
@@ -41,8 +43,8 @@ public class GroupOrderController extends BaseController {
*/
@SaCheckPermission("xq:groupOrder:list")
@GetMapping("/list")
public TableDataInfo<GroupOrder> list(GroupOrder bo, PageQuery pageQuery) {
Page<GroupOrder> page = groupOrderService.page(pageQuery.build(), Wrappers.lambdaQuery(bo));
public TableDataInfo<GroupOrderAdminVo> list(GroupOrderAdminVo bo, PageQuery pageQuery) {
Page<GroupOrderAdminVo> page = groupOrderService.pageAdmin(pageQuery, bo);
return TableDataInfo.build(page);
}
@@ -58,26 +60,16 @@ public class GroupOrderController extends BaseController {
return R.ok(groupOrderService.getById(id));
}
/**
* 新增入群订单
*/
@SaCheckPermission("xq:groupOrder:add")
@Log(title = "入群订单", businessType = BusinessType.INSERT)
@RepeatSubmit()
@PostMapping()
public R<Void> add(@Validated(AddGroup.class) @RequestBody GroupOrder bo) {
return toAjax(groupOrderService.save(bo));
}
/**
* 修改入群订单
*/
@SaCheckPermission("xq:groupOrder:edit")
@Log(title = "入群订单", businessType = BusinessType.UPDATE)
@RepeatSubmit()
@PutMapping()
public R<Void> edit(@Validated(EditGroup.class) @RequestBody GroupOrder bo) {
return toAjax(groupOrderService.updateById(bo));
@PostMapping("/dealStatus/commit")
public R<Void> edit(@RequestBody IdReq bo) {
groupOrderService.commitDealStatus(bo.getId());
return R.ok();
}
/**

View File

@@ -106,6 +106,8 @@ public class GroupOrder implements Serializable {
*/
private Long adminId;
private Integer dealStatus;
private LocalDateTime createTime;
private LocalDateTime updateTime;

View File

@@ -0,0 +1,11 @@
package com.ruoyi.xq.dto.admin.groupOrder;
import com.ruoyi.xq.domain.GroupOrder;
import lombok.Data;
@Data
public class GroupOrderAdminVo extends GroupOrder {
private String nickname;
private String mobile;
private String avatar;
}

View File

@@ -1,7 +1,11 @@
package com.ruoyi.xq.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.dto.admin.groupOrder.GroupOrderAdminVo;
import org.apache.ibatis.annotations.Param;
/**
* 入群订单Mapper接口
@@ -11,4 +15,5 @@ import com.ruoyi.xq.domain.GroupOrder;
*/
public interface GroupOrderMapper extends BaseMapper<GroupOrder> {
Page<GroupOrderAdminVo> pageAdmin(@Param("build") Page<Object> build, @Param("bo") GroupOrderAdminVo bo);
}

View File

@@ -1,7 +1,10 @@
package com.ruoyi.xq.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.dto.admin.groupOrder.GroupOrderAdminVo;
import com.ruoyi.xq.dto.app.group.CreateGroupOrderReq;
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
@@ -23,4 +26,8 @@ public interface GroupOrderService extends IService<GroupOrder> {
GroupOrder getByOrderNo(String orderNo);
ConsumeResp doSuccess(String orderNo, Map<String, String> params, String appId, PlatformTypeEnum payTypeEnum);
Page<GroupOrderAdminVo> pageAdmin(PageQuery pageQuery, GroupOrderAdminVo bo);
void commitDealStatus(Long id);
}

View File

@@ -9,6 +9,7 @@ import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.xq.domain.ActivityOrder;
import com.ruoyi.xq.domain.ActivityShop;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.dto.admin.activity.ActivityOrderAdminVo;
import com.ruoyi.xq.dto.app.activity.CreateOrderReq;
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
@@ -30,6 +31,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -107,6 +109,7 @@ public class ActivityOrderServiceImpl extends ServiceImpl<ActivityOrderMapper,Ac
.eq(ActivityOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
.set(ActivityOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(ActivityOrder::getTraceId, traceId)
.set(ActivityOrder::getPayTime, LocalDateTime.now())
.set(ActivityOrder::getReturnContent, JSON.toJSONString(params))
.set(ActivityOrder::getAppid,appId)
.set(ActivityOrder::getPlatformType, payTypeEnum.getCode()));

View File

@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.AuthOrder;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.dto.admin.authOrder.AuthOrderAdminVo;
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
@@ -26,6 +27,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -85,6 +87,7 @@ public class AuthOrderServiceImpl extends ServiceImpl<AuthOrderMapper,AuthOrder>
.eq(AuthOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
.set(AuthOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(AuthOrder::getTraceId, traceId)
.set(AuthOrder::getPayTime, LocalDateTime.now())
.set(AuthOrder::getReturnContent, JSON.toJSONString(params))
.set(AuthOrder::getAppid,appId)
.set(AuthOrder::getPlatformType, payTypeEnum.getCode()));

View File

@@ -2,11 +2,14 @@ package com.ruoyi.xq.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.xq.domain.ActivityOrder;
import com.ruoyi.xq.domain.Group;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.dto.admin.groupOrder.GroupOrderAdminVo;
import com.ruoyi.xq.dto.app.group.CreateGroupOrderReq;
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
import com.ruoyi.xq.dto.common.user.MinUser;
@@ -24,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -100,6 +104,7 @@ public class GroupOrderServiceImpl extends ServiceImpl<GroupOrderMapper,GroupOrd
.eq(GroupOrder::getId, order.getId())
.eq(GroupOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
.set(GroupOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(GroupOrder::getPayTime, LocalDateTime.now())
.set(GroupOrder::getReturnContent, JSON.toJSONString(params))
.set(GroupOrder::getAppid,appId)
.set(GroupOrder::getPlatformType, payTypeEnum.getCode()));
@@ -116,4 +121,24 @@ public class GroupOrderServiceImpl extends ServiceImpl<GroupOrderMapper,GroupOrd
return resp;
}
@Override
public Page<GroupOrderAdminVo> pageAdmin(PageQuery pageQuery, GroupOrderAdminVo bo) {
return baseMapper.pageAdmin(pageQuery.build(),bo);
}
@Override
public void commitDealStatus(Long id) {
GroupOrder groupOrder = this.getById(id);
if(groupOrder == null){
throw new ServiceException("订单不存在");
}
if(!PayStatusEnum.PAY.getCode().equals(groupOrder.getPayStatus())){
throw new ServiceException("未支付无法处理");
}
this.update(Wrappers.lambdaUpdate(GroupOrder.class)
.eq(GroupOrder::getId, id)
.eq(GroupOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(GroupOrder::getDealStatus, 1));
}
}

View File

@@ -6,10 +6,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.xq.domain.ConsumeLog;
import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.domain.VipOrder;
import com.ruoyi.xq.domain.VipPrice;
import com.ruoyi.xq.domain.*;
import com.ruoyi.xq.dto.admin.vipOrder.VipOrderAdminVo;
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
import com.ruoyi.xq.enums.common.OrderTypeEnum;
@@ -28,6 +25,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -98,6 +96,7 @@ public class VipOrderServiceImpl extends ServiceImpl<VipOrderMapper,VipOrder> im
.eq(VipOrder::getId, vipOrder.getId())
.eq(VipOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
.set(VipOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(VipOrder::getPayTime, LocalDateTime.now())
.set(VipOrder::getTraceId, traceId)
.set(VipOrder::getReturnContent, JSON.toJSONString(params))
.set(VipOrder::getAppid,appId)

View File

@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.core.domain.PageQuery;
import com.ruoyi.xq.domain.AuthOrder;
import com.ruoyi.xq.domain.GroupOrder;
import com.ruoyi.xq.domain.User;
import com.ruoyi.xq.domain.WxTransOrder;
import com.ruoyi.xq.dto.admin.account.WxTransOrderAdminVo;
@@ -29,6 +31,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.Map;
/**
@@ -88,6 +91,7 @@ public class WxTransOrderServiceImpl extends ServiceImpl<WxTransOrderMapper,WxTr
.eq(WxTransOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
.set(WxTransOrder::getPayStatus, PayStatusEnum.PAY.getCode())
.set(WxTransOrder::getTraceId, traceId)
.set(WxTransOrder::getPayTime, LocalDateTime.now())
.set(WxTransOrder::getReturnContent, JSON.toJSONString(params))
.set(WxTransOrder::getAppid,appId)
.set(WxTransOrder::getPlatformType, payTypeEnum.getCode()));

View File

@@ -4,31 +4,38 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.xq.mapper.GroupOrderMapper">
<resultMap type="com.ruoyi.xq.domain.GroupOrder" id="GroupOrderResult">
<result property="id" column="id"/>
<result property="groupId" column="group_id"/>
<result property="groupImage" column="group_image"/>
<result property="groupName" column="group_name"/>
<result property="cityName" column="city_name"/>
<result property="cityCode" column="city_code"/>
<result property="joinMobile" column="join_mobile"/>
<result property="joinPrice" column="join_price"/>
<result property="userId" column="user_id"/>
<result property="usercode" column="usercode"/>
<result property="gender" column="gender"/>
<result property="body" column="body"/>
<result property="orderName" column="order_name"/>
<result property="orderNo" column="order_no"/>
<result property="platformType" column="platform_type"/>
<result property="payStatus" column="pay_status"/>
<result property="payTime" column="pay_time"/>
<result property="appid" column="appid"/>
<result property="returnContent" column="return_content"/>
<result property="operateIp" column="operate_ip"/>
<result property="adminId" column="admin_id"/>
<result property="createTime" column="create_time"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<select id="pageAdmin" resultType="com.ruoyi.xq.dto.admin.groupOrder.GroupOrderAdminVo">
select t1.*, t2.nickname,t2.mobile,t2.avatar
from xq_group_order t1
left join xq_user t2 on t1.user_id = t2.id
<where>
<if test="bo.usercode != null and bo.usercode != ''">
and t1.usercode = #{bo.usercode}
</if>
<if test="bo.nickname != null and bo.nickname != ''">
and t2.nickname like concat('%',#{bo.nickname},'%')
</if>
<if test="bo.mobile != null and bo.mobile != ''">
and t2.mobile = #{bo.mobile}
</if>
<if test="bo.groupName != null and bo.groupName != ''">
and t1.group_name like concat('%',#{bo.groupName},'%')
</if>
<if test="bo.joinMobile != null and bo.joinMobile != ''">
and t1.join_mobile = #{bo.joinMobile}
</if>
<if test="bo.orderNo != null and bo.orderNo != ''">
and t1.order_no = #{bo.orderNo}
</if>
<if test="bo.payStatus != null">
and t1.pay_status = #{bo.payStatus}
</if>
<if test="bo.dealStatus != null">
and t1.deal_status = #{bo.dealStatus}
</if>
</where>
order by t1.create_time desc
</select>
</mapper>