init
This commit is contained in:
@@ -0,0 +1,49 @@
|
||||
package com.ruoyi.xq.controller.app;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.ruoyi.common.annotation.Log;
|
||||
import com.ruoyi.common.core.domain.PageModel;
|
||||
import com.ruoyi.common.core.domain.PageQuery;
|
||||
import com.ruoyi.common.core.domain.R;
|
||||
import com.ruoyi.common.enums.BusinessType;
|
||||
import com.ruoyi.common.helper.LoginHelper;
|
||||
import com.ruoyi.xq.dto.app.invite.UserInviteListVo;
|
||||
import com.ruoyi.xq.service.UserInviteService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/invite")
|
||||
@Tag(name = "邀请相关接口")
|
||||
@Slf4j
|
||||
public class InviteAppController {
|
||||
|
||||
@Autowired
|
||||
private UserInviteService userInviteService;
|
||||
|
||||
@GetMapping("/logs")
|
||||
@Operation(summary = "邀请人员记录")
|
||||
@Log(title = "邀请人员记录", businessType = BusinessType.OTHER, isSaveDb = false)
|
||||
public R<PageModel<UserInviteListVo>> inviteLogs(PageQuery pageQuery){
|
||||
IPage<UserInviteListVo> res = userInviteService.pageApp(pageQuery, LoginHelper.getUserId());
|
||||
return R.ok(PageModel.build(res));
|
||||
}
|
||||
|
||||
@GetMapping("/share")
|
||||
@Operation(summary = "获取分享图片")
|
||||
@Log(title = "获取分享图片", businessType = BusinessType.OTHER, isSaveDb = false)
|
||||
public R<Map<String,String>> share(){
|
||||
String url = userInviteService.share(LoginHelper.getUserId());
|
||||
Map<String,String> map = new HashMap<>();
|
||||
map.put("share", url);
|
||||
return R.ok(map);
|
||||
}
|
||||
}
|
||||
@@ -77,13 +77,13 @@ public class SettingAppController {
|
||||
}
|
||||
|
||||
|
||||
// @GetMapping("/areaCode/list")
|
||||
// @Operation(summary = "获取省市区编码接口")
|
||||
// @Log(title = "获取省市区编码接口", businessType = BusinessType.OTHER, isSaveDb = false)
|
||||
// public R<List<AreaCode>> listAreaCode(AreaCodeQuery query){
|
||||
// List<AreaCode> list = areaCodeService.listAreaCode(query);
|
||||
// return R.ok(list);
|
||||
// }
|
||||
@GetMapping("/areaCode/list")
|
||||
@Operation(summary = "获取省市区编码接口")
|
||||
@Log(title = "获取省市区编码接口", businessType = BusinessType.OTHER, isSaveDb = false)
|
||||
public R<List<AreaCode>> listAreaCode(AreaCodeQuery query){
|
||||
List<AreaCode> list = areaCodeService.listAreaCode(query);
|
||||
return R.ok(list);
|
||||
}
|
||||
|
||||
@GetMapping("/areaCode/tree")
|
||||
@Operation(summary = "获取所有省市区编码")
|
||||
|
||||
@@ -171,6 +171,8 @@ public class User implements Serializable {
|
||||
*/
|
||||
private String imToken;
|
||||
|
||||
private String openId;
|
||||
|
||||
private LocalDateTime createTime;
|
||||
|
||||
private LocalDateTime updateTime;
|
||||
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.ruoyi.xq.dto.app.invite;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Data
|
||||
public class UserInviteListVo {
|
||||
@Schema(description = "用户ID")
|
||||
private Long userId;
|
||||
@Schema(description = "用户头像")
|
||||
private String avatar;
|
||||
@Schema(description = "性别 0-未知 1-女 2-男")
|
||||
private Integer gender;
|
||||
@Schema(description = "昵称")
|
||||
private String nickname;
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
@@ -11,10 +11,8 @@ import com.ruoyi.xq.enums.pay.PayStatusEnum;
|
||||
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
|
||||
import com.ruoyi.xq.mq.AmqpProducer;
|
||||
import com.ruoyi.xq.mq.handle.dto.CalculateSalesHandleDTO;
|
||||
import com.ruoyi.xq.service.UserExtendService;
|
||||
import com.ruoyi.xq.service.VipOrderService;
|
||||
import com.ruoyi.xq.service.VipPriceService;
|
||||
import com.ruoyi.xq.service.WxTransOrderService;
|
||||
import com.ruoyi.xq.service.*;
|
||||
import com.ruoyi.xq.service.impl.AuthOrderServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
@@ -34,6 +32,8 @@ public class PayManager {
|
||||
private VipPriceService vipPriceService;
|
||||
@Autowired
|
||||
private WxTransOrderService wxTransOrderService;
|
||||
@Autowired
|
||||
private AuthOrderService authOrderService;
|
||||
|
||||
public PayOrderInfoDTO getOrderInfo(String orderNo){
|
||||
OrderTypeEnum orderTypeEnum = OrderNoUtil.getType(orderNo);
|
||||
@@ -125,6 +125,9 @@ public class PayManager {
|
||||
}
|
||||
}
|
||||
break;
|
||||
case AUTH_ORDER:
|
||||
ConsumeResp authResp = authOrderService.doSuccess(orderNo, params, appId, payTypeEnum);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ import java.io.File;
|
||||
@Component
|
||||
@Slf4j
|
||||
public class ShareManager {
|
||||
private final static String login = "https://12903012.com";
|
||||
private final static String login = "https://xq.mubai8888.com/login?inviteCode=";
|
||||
|
||||
@Autowired
|
||||
private UserExtendService userExtendService;
|
||||
@@ -32,7 +32,7 @@ public class ShareManager {
|
||||
if(StringUtils.isNotEmpty(userExtend.getQrUrl())){
|
||||
return userExtend.getQrUrl();
|
||||
}
|
||||
String url = login + "from=" + usercode;
|
||||
String url = login + usercode;
|
||||
try {
|
||||
File file = QrUtils.generateQrCode(usercode, url);
|
||||
SysOssVo oss = sysOssService.upload(file);
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
package com.ruoyi.xq.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.ruoyi.xq.domain.UserInvite;
|
||||
import com.ruoyi.xq.dto.admin.user.UserInviteAdminVo;
|
||||
import com.ruoyi.xq.dto.app.invite.UserInviteListVo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
/**
|
||||
@@ -15,4 +17,6 @@ import org.apache.ibatis.annotations.Param;
|
||||
public interface UserInviteMapper extends BaseMapper<UserInvite> {
|
||||
|
||||
Page<UserInviteAdminVo> pageAdmin(@Param("build") Page<Object> build, @Param("bo") UserInviteAdminVo bo);
|
||||
|
||||
IPage<UserInviteListVo> pageApp(@Param("build") Page<Object> build, @Param("userId") Long userId);
|
||||
}
|
||||
|
||||
@@ -4,6 +4,11 @@ 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.AuthOrder;
|
||||
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
|
||||
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 实名认证订单Service接口
|
||||
@@ -17,4 +22,7 @@ public interface AuthOrderService extends IService<AuthOrder> {
|
||||
|
||||
AuthOrder createVipOrder(Long userId);
|
||||
|
||||
AuthOrder getByOrderNo(String orderNo);
|
||||
|
||||
ConsumeResp doSuccess(String orderNo, Map<String, String> params, String appId, PlatformTypeEnum payTypeEnum);
|
||||
}
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
package com.ruoyi.xq.service;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
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.UserInvite;
|
||||
import com.ruoyi.xq.dto.admin.user.UserInviteAdminVo;
|
||||
import com.ruoyi.xq.dto.app.invite.UserInviteListVo;
|
||||
|
||||
/**
|
||||
* 用户邀请Service接口
|
||||
@@ -22,4 +24,7 @@ public interface UserInviteService extends IService<UserInvite> {
|
||||
|
||||
UserInvite getByUserId(Long sourceUserId);
|
||||
|
||||
String share(Long userId);
|
||||
|
||||
IPage<UserInviteListVo> pageApp(PageQuery pageQuery, Long userId);
|
||||
}
|
||||
|
||||
@@ -1,21 +1,29 @@
|
||||
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.xq.domain.AuthOrder;
|
||||
import com.ruoyi.xq.domain.User;
|
||||
import com.ruoyi.xq.dto.app.pay.ConsumeResp;
|
||||
import com.ruoyi.xq.enums.common.OrderTypeEnum;
|
||||
import com.ruoyi.xq.enums.common.TraceIdEnum;
|
||||
import com.ruoyi.xq.enums.pay.PayStatusEnum;
|
||||
import com.ruoyi.xq.enums.pay.PlatformTypeEnum;
|
||||
import com.ruoyi.xq.manager.OrderNoUtil;
|
||||
import com.ruoyi.xq.manager.TraceIdManager;
|
||||
import com.ruoyi.xq.mapper.AuthOrderMapper;
|
||||
import com.ruoyi.xq.service.AuthOrderService;
|
||||
import com.ruoyi.xq.service.UserService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 实名认证订单Service业务层处理
|
||||
@@ -50,4 +58,41 @@ public class AuthOrderServiceImpl extends ServiceImpl<AuthOrderMapper,AuthOrder>
|
||||
this.save(authOrder);
|
||||
return authOrder;
|
||||
}
|
||||
|
||||
@Override
|
||||
public AuthOrder getByOrderNo(String orderNo){
|
||||
return this.getOne(Wrappers.lambdaQuery(AuthOrder.class).eq(AuthOrder::getOrderNo, orderNo).last("limit 1"));
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public ConsumeResp doSuccess(String orderNo, Map<String, String> params, String appId, PlatformTypeEnum payTypeEnum){
|
||||
AuthOrder authOrder = this.getByOrderNo(orderNo);
|
||||
if(authOrder == null){
|
||||
ConsumeResp resp = new ConsumeResp();
|
||||
resp.setSuccess(false);
|
||||
return resp;
|
||||
}
|
||||
String traceId = TraceIdManager.gen(TraceIdEnum.VIP);
|
||||
boolean success = this.update(Wrappers.lambdaUpdate(AuthOrder.class)
|
||||
.eq(AuthOrder::getId, authOrder.getId())
|
||||
.eq(AuthOrder::getPayStatus, PayStatusEnum.READY_PAY.getCode())
|
||||
.set(AuthOrder::getPayStatus, PayStatusEnum.PAY.getCode())
|
||||
.set(AuthOrder::getTraceId, traceId)
|
||||
.set(AuthOrder::getReturnContent, JSON.toJSONString(params))
|
||||
.set(AuthOrder::getAppid,appId)
|
||||
.set(AuthOrder::getPlatformType, payTypeEnum.getCode()));
|
||||
if(!success){
|
||||
ConsumeResp resp = new ConsumeResp();
|
||||
resp.setSuccess(false);
|
||||
return resp;
|
||||
}
|
||||
ConsumeResp resp = new ConsumeResp();
|
||||
resp.setPrice(authOrder.getPrice());
|
||||
resp.setUserId(authOrder.getUserId());
|
||||
resp.setTraceId(traceId);
|
||||
resp.setSuccess(true);
|
||||
return resp;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,14 +1,21 @@
|
||||
package com.ruoyi.xq.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||
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.User;
|
||||
import com.ruoyi.xq.domain.UserExtend;
|
||||
import com.ruoyi.xq.domain.UserInvite;
|
||||
import com.ruoyi.xq.dto.admin.user.UserInviteAdminVo;
|
||||
import com.ruoyi.xq.dto.app.invite.UserInviteListVo;
|
||||
import com.ruoyi.xq.dto.common.user.MinUser;
|
||||
import com.ruoyi.xq.manager.ShareManager;
|
||||
import com.ruoyi.xq.mapper.UserInviteMapper;
|
||||
import com.ruoyi.xq.service.UserExtendService;
|
||||
import com.ruoyi.xq.service.UserInviteService;
|
||||
import com.ruoyi.xq.service.UserService;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
@@ -30,6 +37,10 @@ public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInv
|
||||
|
||||
@Autowired
|
||||
private UserService userService;
|
||||
@Autowired
|
||||
private ShareManager shareManager;
|
||||
@Autowired
|
||||
private UserExtendService userExtendService;
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@@ -78,4 +89,22 @@ public class UserInviteServiceImpl extends ServiceImpl<UserInviteMapper, UserInv
|
||||
public UserInvite getByUserId(Long sourceUserId) {
|
||||
return this.getOne(Wrappers.lambdaQuery(UserInvite.class).eq(UserInvite::getUserId, sourceUserId).last("limit 1"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String share(Long userId) {
|
||||
UserExtend userExtend = userExtendService.getByUserId(userId);
|
||||
if(userExtend != null && StringUtils.isNotBlank(userExtend.getShareUrl())){
|
||||
return userExtend.getShareUrl();
|
||||
}
|
||||
MinUser minUser = userService.getMinUserById(userId);
|
||||
if(minUser == null){
|
||||
throw new ServiceException("当前用户不存在");
|
||||
}
|
||||
return shareManager.genShareUrl(minUser.getUsercode());
|
||||
}
|
||||
|
||||
@Override
|
||||
public IPage<UserInviteListVo> pageApp(PageQuery pageQuery, Long userId) {
|
||||
return baseMapper.pageApp(pageQuery.build(),userId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
package com.ruoyi.xq.util;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
||||
import javax.imageio.ImageIO;
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
@@ -16,9 +19,10 @@ import java.net.URL;
|
||||
* 创建时间:2021年7月30日 上午10:27:13
|
||||
* @version
|
||||
*/
|
||||
@Slf4j
|
||||
public class ImageUtil {
|
||||
|
||||
private final static String BACK_IMAGE_PATH = "/home/server/cai/images/share_back.png";
|
||||
private final static String BACK_IMAGE_PATH = "/home/server/xq/images/share_back.png";
|
||||
// 1260 2100
|
||||
|
||||
public static void main(String[] args) throws IOException {
|
||||
@@ -97,7 +101,7 @@ public class ImageUtil {
|
||||
//输出图片
|
||||
ImageIO.write(big, "png", new File(outPath));
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
log.error("合成海报失败!",e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user