Commit 81940ccc authored by libin's avatar libin

Merge branch 'base-modify' of http://113.105.137.151:22280/youjj/cloud-platform into base-modify

parents d0869036 64eaa163
...@@ -17,7 +17,8 @@ spring: ...@@ -17,7 +17,8 @@ spring:
nacos: nacos:
config: config:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
--- ---
spring: spring:
profiles: pro profiles: pro
......
...@@ -5,7 +5,22 @@ import lombok.Data; ...@@ -5,7 +5,22 @@ import lombok.Data;
@Data @Data
public class RegisterQueueDTO { public class RegisterQueueDTO {
RegisterParamDTO registerParamDTO; public static final Integer SIGN_NEW = 1;
public static final Integer SIGN_ACTIVATE = 2;
public static final Integer SIGN_LOGIN = 3;
/**
* 执行方法的入参
*/
RegisterParamDTO InParamDTO;
/**
* app用户id
*/
Integer appUserId; Integer appUserId;
JSONObject data;
/**
* 标识:1--新注册;2--激活;3--登录
*/
Integer sign;
} }
...@@ -9,6 +9,12 @@ import lombok.Data; ...@@ -9,6 +9,12 @@ import lombok.Data;
@Data @Data
public class AppUserDTO { public class AppUserDTO {
public static final Integer CHANNEL_APP = 1;
public static final Integer CHANNEL_SMALL = 2;
public static final Integer source_APP = 1;
public static final Integer source_SMALL = 2;
private Integer id; private Integer id;
private Integer userid; private Integer userid;
private Integer isMember; private Integer isMember;
......
package com.github.wxiaoqi.security.admin.rpc.service; package com.github.wxiaoqi.security.admin.rpc.service;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.biz.*; import com.github.wxiaoqi.security.admin.biz.*;
...@@ -319,18 +318,7 @@ public class AppPermissionService { ...@@ -319,18 +318,7 @@ public class AppPermissionService {
data.put("imUserId", imUserId); data.put("imUserId", imUserId);
} }
if (data != null) { if (data != null) {
try { sendQueue(username, password, headimgurl, nickname, mobilecode, openId, unionid, type, code, activityCode, userid);
//入参
RegisterQueueDTO registerQueueDTO = new RegisterQueueDTO();
registerQueueDTO.setData(data);
registerQueueDTO.setAppUserId(userid);
registerQueueDTO.setRegisterParamDTO(new RegisterParamDTO(username, password, headimgurl,
nickname, mobilecode, openId, unionid, type, code, activityCode));
// //注册成功,发送队列
mqSerderFeign.sendMessage(RabbitConstant.ADMIN_TOPIC, KEY_REGISTER_SUCCESS, JSONUtil.toJsonStr(registerQueueDTO));
}catch (Exception e){
log.error(e.getMessage(), e);
}
return JsonResultUtil.createSuccessResultWithObj(data); return JsonResultUtil.createSuccessResultWithObj(data);
} else { } else {
return JsonResultUtil.createDefaultFail(); return JsonResultUtil.createDefaultFail();
...@@ -341,6 +329,22 @@ public class AppPermissionService { ...@@ -341,6 +329,22 @@ public class AppPermissionService {
} }
} }
private void sendQueue(String username, String password, String headimgurl, String nickname, String mobilecode, String openId, String unionid, Integer type, String code, String activityCode, Integer userid) {
try {
RegisterQueueDTO registerQueueDTO = new RegisterQueueDTO();
//出参
// registerQueueDTO.setData(data);
registerQueueDTO.setAppUserId(userid);
//入参
registerQueueDTO.setInParamDTO(new RegisterParamDTO(username, password, headimgurl,
nickname, mobilecode, openId, unionid, type, code, activityCode));
// 注册成功,发送队列
mqSerderFeign.sendMessage(RabbitConstant.ADMIN_TOPIC, KEY_REGISTER_SUCCESS, JSONUtil.toJsonStr(registerQueueDTO));
}catch (Exception e){
log.error(e.getMessage(), e);
}
}
/** /**
* 自动登录 * 自动登录
*/ */
......
...@@ -17,7 +17,7 @@ spring: ...@@ -17,7 +17,7 @@ spring:
config: config:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个 #共用配置,暂定一个
shared-dataids: common-dev.yaml shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
--- ---
spring: spring:
......
package com.xxfc.platform.activity.entity; package com.xxfc.platform.activity.entity;
import lombok.Builder;
import lombok.Data; import lombok.Data;
import javax.persistence.Column; import javax.persistence.Column;
......
...@@ -14,7 +14,7 @@ public class IntegralUserRecordDto extends PageParam { ...@@ -14,7 +14,7 @@ public class IntegralUserRecordDto extends PageParam {
/** /**
* 0-获取积分;1-抵扣积分 * 0-获取积分;1-抵扣积分
*/ */
private Integer type; private Integer type = 0;
/** /**
* 积分数 * 积分数
......
...@@ -77,6 +77,12 @@ public class UserCouponVo { ...@@ -77,6 +77,12 @@ public class UserCouponVo {
@ApiModelProperty(value = "优惠券标题(有图片则显示图片):无门槛50元优惠券 | 单品最高减2000元") @ApiModelProperty(value = "优惠券标题(有图片则显示图片):无门槛50元优惠券 | 单品最高减2000元")
private String title; private String title;
/**
* 副标题
*/
@ApiModelProperty(value = "副标题")
private String subtitle;
/** /**
* 图片 * 图片
*/ */
......
package com.xxfc.platform.activity.biz; package com.xxfc.platform.activity.biz;
import com.github.wxiaoqi.security.admin.dto.RegisterQueueDTO; import com.github.wxiaoqi.security.admin.dto.RegisterQueueDTO;
import com.github.wxiaoqi.security.admin.feign.UserFeign;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.xxfc.platform.activity.entity.ActivityPopularizeLog;
import com.xxfc.platform.activity.entity.ActivityPopularizeRelation;
import com.xxfc.platform.activity.entity.ActivityPopularizeUser;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -8,6 +13,9 @@ import com.xxfc.platform.activity.entity.ActivityPopularize; ...@@ -8,6 +13,9 @@ import com.xxfc.platform.activity.entity.ActivityPopularize;
import com.xxfc.platform.activity.mapper.ActivityPopularizeMapper; import com.xxfc.platform.activity.mapper.ActivityPopularizeMapper;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_FALSE;
import static com.github.wxiaoqi.security.common.constant.CommonConstants.SYS_TRUE;
/** /**
* 推广活动(邀请有礼) * 推广活动(邀请有礼)
* *
...@@ -18,15 +26,79 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz; ...@@ -18,15 +26,79 @@ import com.github.wxiaoqi.security.common.biz.BaseBiz;
@Service @Service
public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,ActivityPopularize> { public class ActivityPopularizeBiz extends BaseBiz<ActivityPopularizeMapper,ActivityPopularize> {
// @Autowired @Autowired
ActivityPopularizeRelationBiz relationBiz;
@Autowired
ActivityPopularizeBiz popularizeBiz;
@Autowired
ActivityPopularizeUserBiz popularizeUserBiz;
@Autowired
ActivityPopularizeLogBiz popularizeLogBiz;
@Autowired
UserFeign userFeign;
public static final String POPULARIZE_0101 = "0101"; public static final String POPULARIZE_0101 = "0101";
public void handleRegister(RegisterQueueDTO registerQueueDTO) { public void handleRegister(RegisterQueueDTO registerQueueDTO) {
//获取活动code
if(POPULARIZE_0101.equals(registerQueueDTO.getRegisterParamDTO().getActivityCode())) { String activityCode = registerQueueDTO.getInParamDTO().getActivityCode();
AppUserDTO appUserDTO = userFeign.userDetailById(registerQueueDTO.getAppUserId()).getData();
//获取活动code,并且注册来源是app 并且 是邀请注册
if(POPULARIZE_0101.equals(registerQueueDTO.getInParamDTO().getActivityCode())
&& RegisterQueueDTO.SIGN_LOGIN.equals(registerQueueDTO.getSign())) {
ActivityPopularize activityPopularize = popularizeBiz.selectOne(new ActivityPopularize(){{
setCode(activityCode);
}});
Integer majorUserId = Integer.valueOf(appUserDTO.getInviterAccount());
//添加活动关系 //添加活动关系
relationBiz.insertSelective(new ActivityPopularizeRelation(){{
setPopularizeId(activityPopularize.getId());
setMajorUserId(majorUserId);
setMinorUserId(appUserDTO.getUserid());
}});
ActivityPopularizeLog popularizeLog = popularizeLogBiz.selectOne(new ActivityPopularizeLog(){{
setUserId(majorUserId);
setItemId(3);
}});
//生成任务项
if(null == popularizeLog){
popularizeLogBiz.insertSelectiveRe(new ActivityPopularizeLog(){{
setItemId(3);
setUserId(majorUserId);
setStatus(SYS_FALSE);
setPopularizeId(activityPopularize.getId());
}});
}
//查出majorUser参与活动信息
ActivityPopularizeUser activityPopularizeUser = popularizeUserBiz.selectOne(new ActivityPopularizeUser(){{
setUserId(majorUserId);
setPopularizeId(activityPopularize.getId());
}});
//任务没有完成
if(!SYS_TRUE.equals(activityPopularizeUser.getStatus())) {
//检查是否满足奖励
if(relationBiz.selectList(new ActivityPopularizeRelation(){{
setMajorUserId(appUserDTO.getUserid());
setPopularizeId(activityPopularize.getId());
}}).size() >= 10) {
activityPopularizeUser.setStatus(SYS_TRUE);
popularizeUserBiz.updateSelectiveById(activityPopularizeUser);
popularizeLog.setStatus(SYS_TRUE);
popularizeLogBiz.updateSelectiveById(popularizeLog);
}
}
} }
} }
} }
\ No newline at end of file
...@@ -22,44 +22,18 @@ import java.util.ArrayList; ...@@ -22,44 +22,18 @@ import java.util.ArrayList;
public class RabbitActivityConfig extends RabbitCommonConfig { public class RabbitActivityConfig extends RabbitCommonConfig {
public static final String INTEGRAL_QUEUE = "integral_queue"; public static final String INTEGRAL_QUEUE = "integral_queue";
// public static final String POPULARZIE_REGISTER_QUEUE = "popularzie.register.queue";
// public static final String POPULARZIE_AUTH_QUEUE = "popularzie.auth.queue";
public static final String POPULARZIE_0101_QUEUE = "popularzie.0101.queue";
static { static {
myQueue = new ArrayList<BindDTO>(){{ myQueue = new ArrayList<BindDTO>(){{
add(new BindDTO(INTEGRAL_QUEUE, RabbitConstant.ADMIN_TOPIC, "order.#")); add(new BindDTO(INTEGRAL_QUEUE, RabbitConstant.ORDER_TOPIC, "order.#"));
add(new BindDTO(POPULARZIE_0101_QUEUE, RabbitConstant.ADMIN_TOPIC, "appUser.#"));
// add(new BindDTO(POPULARZIE_REGISTER_QUEUE, RabbitConstant.ADMIN_TOPIC, "appUser.register"));
// add(new BindDTO(POPULARZIE_AUTH_QUEUE, RabbitConstant.ADMIN_TOPIC, "appUser.login"));
}}; }};
} }
// public static final String BASE_EXC = "hz_exchange";
// public static final String INTEGRAL_QUEUE = "integral_queue";
// public static final String ORDER_WATER_KEY = "order";
// /**
// * 队列交换机
// * 注意这里的交换机类型:CustomExchange
// * @return
// */
// @Bean
// public DirectExchange directExchange(){
// return new DirectExchange(BASE_EXC, true, false);
// }
//
// /**
// * 队列
// * @return
// */
// @Bean
// public Queue orderWaterQueue(){
// return new Queue(INTEGRAL_QUEUE,true);
// }
//
// /**
// * 队列绑定交换机
// * @return
// */
// @Bean
// public Binding orderWaterBinding(Queue orderWaterQueue, DirectExchange directExchange){
// return BindingBuilder.bind(orderWaterQueue).to(directExchange).with(ORDER_WATER_KEY);
// }
} }
package com.xxfc.platform.activity.config;
import org.springframework.amqp.core.Queue;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
/**
* rabbitmq配置类
* 包含: 不知道什么orderWater队列
* @author zhoujw
* @date 2019/7/15
*/
@Configuration
public class RabbitIntegralConfig {
public static final String HZ_EXC = "hz_exchange";
public static final String INTEGRAL_QUEUE = "integral_queue";
public static final String ORDER_WATER_KEY = "order";
// /**
// * 队列交换机
// * 注意这里的交换机类型:CustomExchange
// * @return
// */
// @Bean
// public DirectExchange directExchange(){
// return new DirectExchange(HZ_EXC, true, false);
// }
/**
* 队列
* @return
*/
@Bean
public Queue orderWaterQueue(){
return new Queue(INTEGRAL_QUEUE,true);
}
// /**
// * 队列绑定交换机
// * @return
// */
// @Bean
// public Binding orderWaterBinding(Queue orderWaterQueue, DirectExchange directExchange){
// return BindingBuilder.bind(orderWaterQueue).to(directExchange).with(ORDER_WATER_KEY);
// }
}
...@@ -4,7 +4,6 @@ package com.xxfc.platform.activity.handler; ...@@ -4,7 +4,6 @@ package com.xxfc.platform.activity.handler;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.rabbitmq.client.Channel; import com.rabbitmq.client.Channel;
import com.xxfc.platform.activity.biz.IntegralUserRecordBiz; import com.xxfc.platform.activity.biz.IntegralUserRecordBiz;
import com.xxfc.platform.activity.config.RabbitActivityConfig;
import com.xxfc.platform.activity.vo.IntegralUserRecordDto; import com.xxfc.platform.activity.vo.IntegralUserRecordDto;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
...@@ -27,7 +26,7 @@ public class IntegralMQHandler { ...@@ -27,7 +26,7 @@ public class IntegralMQHandler {
@Autowired @Autowired
IntegralUserRecordBiz integralUserRecordBiz; IntegralUserRecordBiz integralUserRecordBiz;
@RabbitListener(queues = RabbitActivityConfig.INTEGRAL_QUEUE) @RabbitListener(queues = "integral_handle_queue")
public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) { public void integralHandler(Message message, @Headers Map<String, Object> headers, Channel channel) {
ExecutorService executorService = Executors.newCachedThreadPool(); ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() { executorService.execute(new Runnable() {
......
...@@ -30,7 +30,8 @@ public class PopularizeMQHandler { ...@@ -30,7 +30,8 @@ public class PopularizeMQHandler {
@Autowired @Autowired
ActivityPopularizeBiz activityPopularizeBiz; ActivityPopularizeBiz activityPopularizeBiz;
@RabbitListener(queues = RabbitActivityConfig.INTEGRAL_QUEUE) //@RabbitListener(queues = {RabbitActivityConfig.POPULARZIE_REGISTER_QUEUE,RabbitActivityConfig.POPULARZIE_AUTH_QUEUE})
@RabbitListener(queues = {RabbitActivityConfig.POPULARZIE_0101_QUEUE})
public void popularizeHandler(Message message, @Headers Map<String, Object> headers, Channel channel) { public void popularizeHandler(Message message, @Headers Map<String, Object> headers, Channel channel) {
ExecutorService executorService = Executors.newCachedThreadPool(); ExecutorService executorService = Executors.newCachedThreadPool();
executorService.execute(new Runnable() { executorService.execute(new Runnable() {
......
...@@ -77,10 +77,6 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular ...@@ -77,10 +77,6 @@ public class ActivityPopularizeController extends BaseController<ActivityPopular
setType(type); setType(type);
}}).stream().map(v -> { }}).stream().map(v -> {
PopularizeVO vo = BeanUtil.toBean(v, PopularizeVO.class); PopularizeVO vo = BeanUtil.toBean(v, PopularizeVO.class);
vo.setUserVOs(new ArrayList<UserVO>(){{
add(new UserVO(){{setNickname("小A");setHeadimgurl("https://xxtest.upyuns.com/image/app/default_%20avatar.png");}});
add(new UserVO(){{setNickname("小B");setHeadimgurl("https://xxtest.upyuns.com/image/app/default_%20avatar.png");}});
}});
ActivityPopularizeUser[] apu = new ActivityPopularizeUser[1]; ActivityPopularizeUser[] apu = new ActivityPopularizeUser[1];
Map<Integer, ActivityPopularizeLog>[] aplMap = new HashMap[1]; Map<Integer, ActivityPopularizeLog>[] aplMap = new HashMap[1];
if(null != appUserDTO) { if(null != appUserDTO) {
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
<result column="user_id" property="userId" jdbcType="INTEGER" /> <result column="user_id" property="userId" jdbcType="INTEGER" />
<result column="type" property="type" jdbcType="INTEGER" /> <result column="type" property="type" jdbcType="INTEGER" />
<result column="point" property="point" jdbcType="INTEGER" /> <result column="point" property="point" jdbcType="INTEGER" />
<result column="integral_rule_code" property="integralRuleCode" jdbcType="INTEGER" /> <result column="integral_rule_code" property="integralRuleCode" jdbcType="VARCHAR" />
<result column="crt_time" property="crtTime" jdbcType="BIGINT" /> <result column="crt_time" property="crtTime" jdbcType="BIGINT" />
<result column="is_valid" property="isValid" jdbcType="BIT" /> <result column="is_valid" property="isValid" jdbcType="BIT" />
<result column="isdel" property="isdel" jdbcType="BIT" /> <result column="isdel" property="isdel" jdbcType="BIT" />
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
<result property="expireTime" column="expire_time"/> <result property="expireTime" column="expire_time"/>
<result property="useTime" column="use_time"/> <result property="useTime" column="use_time"/>
<result property="title" column="title"/> <result property="title" column="title"/>
<result property="subtitle" column="subtitle"/>
<result property="icon" column="icon"/> <result property="icon" column="icon"/>
<result property="used" column="used"/> <result property="used" column="used"/>
<result property="channel" column="channel"/> <result property="channel" column="channel"/>
......
...@@ -23,7 +23,12 @@ ...@@ -23,7 +23,12 @@
<artifactId>ace-auth-client</artifactId> <artifactId>ace-auth-client</artifactId>
<version>2.0-SNAPSHOT</version> <version>2.0-SNAPSHOT</version>
</dependency> </dependency>
<dependency>
<groupId>com.xxfc.platform</groupId>
<artifactId>xx-universal-api</artifactId>
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<!-- 自己项目 --> <!-- 自己项目 -->
......
package com.xxfc.platform.im.biz; package com.xxfc.platform.im.biz;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
...@@ -8,6 +9,8 @@ import com.xxfc.platform.im.dto.UpdateTypeEnum; ...@@ -8,6 +9,8 @@ import com.xxfc.platform.im.dto.UpdateTypeEnum;
import com.xxfc.platform.im.entity.ImComment; import com.xxfc.platform.im.entity.ImComment;
import com.xxfc.platform.im.entity.ImQuestion; import com.xxfc.platform.im.entity.ImQuestion;
import com.xxfc.platform.im.mapper.ImCommentMapper; import com.xxfc.platform.im.mapper.ImCommentMapper;
import com.xxfc.platform.universal.constant.MQconstant;
import com.xxfc.platform.universal.feign.MQSenderFeign;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -20,7 +23,8 @@ public class ImCommentBiz extends BaseBiz<ImCommentMapper, ImComment> { ...@@ -20,7 +23,8 @@ public class ImCommentBiz extends BaseBiz<ImCommentMapper, ImComment> {
ImQuestionBiz imQuestionBiz; ImQuestionBiz imQuestionBiz;
@Autowired @Autowired
UserBiz userBiz; UserBiz userBiz;
@Autowired
MQSenderFeign mqSenderFeign;
/** /**
* 添加评论 * 添加评论
* *
...@@ -43,8 +47,15 @@ public class ImCommentBiz extends BaseBiz<ImCommentMapper, ImComment> { ...@@ -43,8 +47,15 @@ public class ImCommentBiz extends BaseBiz<ImCommentMapper, ImComment> {
return ObjectRestResponse.createDefaultFail(); return ObjectRestResponse.createDefaultFail();
} }
insertSelective(imComment); insertSelective(imComment);
ImQuestion newValue = imQuestionBiz.selectById(imComment.getQuestionId());
//修改评论数 //修改评论数
imQuestionBiz.update(imComment.getQuestionId(), MsgTypeEnum.comment, UpdateTypeEnum.add); imQuestionBiz.update(imComment.getQuestionId(), MsgTypeEnum.comment, UpdateTypeEnum.add);
//评论添加积分
JSONObject jsonObject = new JSONObject();
jsonObject.put("userId", appUserDTO.getUserid());
jsonObject.put("channelId", newValue.getId());
jsonObject.put("integralRuleCode", "COMMENTPUBLISH");
mqSenderFeign.sendMessage(MQconstant.INTEGRAL_EXCHANGE, MQconstant.INTEGRAL_ROUTING_KEY, jsonObject.toJSONString());
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
......
package com.xxfc.platform.im.biz; package com.xxfc.platform.im.biz;
import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO; import com.github.wxiaoqi.security.admin.feign.dto.AppUserDTO;
import com.github.wxiaoqi.security.common.biz.BaseBiz; import com.github.wxiaoqi.security.common.biz.BaseBiz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
...@@ -10,6 +11,8 @@ import com.xxfc.platform.im.dto.QuestionParamDto; ...@@ -10,6 +11,8 @@ import com.xxfc.platform.im.dto.QuestionParamDto;
import com.xxfc.platform.im.dto.UpdateTypeEnum; import com.xxfc.platform.im.dto.UpdateTypeEnum;
import com.xxfc.platform.im.entity.ImQuestion; import com.xxfc.platform.im.entity.ImQuestion;
import com.xxfc.platform.im.mapper.ImQuestionMapper; import com.xxfc.platform.im.mapper.ImQuestionMapper;
import com.xxfc.platform.universal.constant.MQconstant;
import com.xxfc.platform.universal.feign.MQSenderFeign;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -22,6 +25,9 @@ public class ImQuestionBiz extends BaseBiz<ImQuestionMapper, ImQuestion> { ...@@ -22,6 +25,9 @@ public class ImQuestionBiz extends BaseBiz<ImQuestionMapper, ImQuestion> {
@Autowired @Autowired
UserBiz userBiz; UserBiz userBiz;
@Autowired
MQSenderFeign mqSenderFeign;
/** /**
* 获取列表 * 获取列表
* *
...@@ -59,6 +65,12 @@ public class ImQuestionBiz extends BaseBiz<ImQuestionMapper, ImQuestion> { ...@@ -59,6 +65,12 @@ public class ImQuestionBiz extends BaseBiz<ImQuestionMapper, ImQuestion> {
return ObjectRestResponse.paramIsEmpty(); return ObjectRestResponse.paramIsEmpty();
} }
insertSelective(imQuestion); insertSelective(imQuestion);
ImQuestion newValue = mapper.selectOne(imQuestion);
JSONObject jsonObject = new JSONObject();
jsonObject.put("userId", appUserDTO.getUserid());
jsonObject.put("channelId", newValue.getId());
jsonObject.put("integralRuleCode", "PUBLISH");
mqSenderFeign.sendMessage(MQconstant.INTEGRAL_EXCHANGE, MQconstant.INTEGRAL_ROUTING_KEY, jsonObject.toJSONString());
return ObjectRestResponse.succ(); return ObjectRestResponse.succ();
} }
......
...@@ -67,8 +67,12 @@ public class MsgBiz { ...@@ -67,8 +67,12 @@ public class MsgBiz {
ids.add(2); ids.add(2);
ids.add(4); ids.add(4);
query = new Query(Criteria.where("body.type").in(ids)); query = new Query(Criteria.where("body.type").in(ids));
List<Msg> list = mongoTemplate.find(query, Msg.class, "s_msg"); if (appUserDTO != null) {
msgList = fetchAndAttach(list, appUserDTO.getImUserid()); msgList = fetchAndAttach(mongoTemplate.find(query, Msg.class, "s_msg"), appUserDTO.getImUserid());
PageInfo<MsgVo> goodPageInfo = new PageInfo<>(replaceMsgResult(msgList));
return ObjectRestResponse.succ(goodPageInfo);
}
msgList = mongoTemplate.find(query, Msg.class, "s_msg");
PageInfo<MsgVo> goodPageInfo = new PageInfo<>(replaceMsgResult(msgList)); PageInfo<MsgVo> goodPageInfo = new PageInfo<>(replaceMsgResult(msgList));
return ObjectRestResponse.succ(goodPageInfo); return ObjectRestResponse.succ(goodPageInfo);
} }
......
...@@ -24,7 +24,8 @@ spring: ...@@ -24,7 +24,8 @@ spring:
nacos: nacos:
config: config:
server-addr: 127.0.0.1:8848 server-addr: 127.0.0.1:8848
#共用配置,暂定一个
shared-dataids: common-dev.yaml,mongodb-log-dev.yaml
--- ---
spring: spring:
profiles: pro profiles: pro
......
package com.xxfc.platform.universal.constant;
public class MQconstant {
public static final String INTEGRAL_EXCHANGE = "integral_exchange";
public static final String INTEGRAL_ROUTING_KEY = "integral_routing_key";
}
...@@ -6,9 +6,9 @@ import org.springframework.web.bind.annotation.GetMapping; ...@@ -6,9 +6,9 @@ import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(value = "xx-universal", contextId = "sendMessage") @FeignClient(value = "xx-universal", contextId = "sendMessage")
public interface MQSerderFeign { public interface MQSenderFeign {
@GetMapping(value = "/message/sendMessage") @GetMapping(value = "/message/sendMessage")
public ObjectRestResponse sendMessage(@RequestParam(value = "exchange") String exchange, @RequestParam(value = "routingKey")String routKey, @RequestParam(value = "jsonParam") String jsonParam); public ObjectRestResponse sendMessage(@RequestParam(value = "exchange") String exchange, @RequestParam(value = "routKey")String routKey, @RequestParam(value = "json") String json);
} }
package com.xxfc.platform.universal.biz; package com.xxfc.platform.universal.biz;
import com.github.wxiaoqi.security.common.msg.ObjectRestResponse; import com.github.wxiaoqi.security.common.msg.ObjectRestResponse;
import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.Message; import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageBuilder; import org.springframework.amqp.core.MessageBuilder;
import org.springframework.amqp.core.MessageProperties; import org.springframework.amqp.core.MessageProperties;
import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import java.util.UUID; import java.util.UUID;
@Service @Service
@AllArgsConstructor @Slf4j
public class MQServiceBiZ { public class MQServiceBiZ {
@Autowired
private RabbitTemplate rabbitTemplate; private RabbitTemplate rabbitTemplate;
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public ObjectRestResponse sendMessage(String exchange, String routKey, String json) { public ObjectRestResponse sendMessage(String exchange, String routKey, String json) {
log.info("发送消息到消息队列:exchange = {}, routingKey = {}, json = {}", exchange, routKey, json);
Message message = MessageBuilder.withBody(json.getBytes()) Message message = MessageBuilder.withBody(json.getBytes())
.setContentType(MessageProperties.CONTENT_TYPE_JSON).setContentEncoding("utf-8") .setContentType(MessageProperties.CONTENT_TYPE_JSON).setContentEncoding("utf-8")
.setMessageId(UUID.randomUUID() + "").build(); .setMessageId(UUID.randomUUID() + "").build();
......
...@@ -17,6 +17,7 @@ import com.github.wxiaoqi.security.common.util.OrderUtil; ...@@ -17,6 +17,7 @@ import com.github.wxiaoqi.security.common.util.OrderUtil;
import com.github.wxiaoqi.security.common.util.process.ResultCode; import com.github.wxiaoqi.security.common.util.process.ResultCode;
import com.github.wxiaoqi.security.common.util.process.SystemConfig; import com.github.wxiaoqi.security.common.util.process.SystemConfig;
import com.github.wxiaoqi.security.common.util.result.JsonResultUtil; import com.github.wxiaoqi.security.common.util.result.JsonResultUtil;
import com.xxfc.platform.universal.constant.MQconstant;
import com.xxfc.platform.universal.entity.Dictionary; import com.xxfc.platform.universal.entity.Dictionary;
import com.xxfc.platform.universal.entity.OrderPay; import com.xxfc.platform.universal.entity.OrderPay;
import com.xxfc.platform.universal.mapper.OrderPayMapper; import com.xxfc.platform.universal.mapper.OrderPayMapper;
...@@ -57,6 +58,9 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper,OrderPay> { ...@@ -57,6 +58,9 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper,OrderPay> {
@Autowired @Autowired
HttpServletRequest request; HttpServletRequest request;
@Autowired
MQServiceBiZ mqServiceBiZ;
public JSONObject preparepay( OrderPayVo orderPayVo) { public JSONObject preparepay( OrderPayVo orderPayVo) {
if(null == orderPayVo) { if(null == orderPayVo) {
log.error("-----参数为空-----------"); log.error("-----参数为空-----------");
...@@ -144,6 +148,21 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper,OrderPay> { ...@@ -144,6 +148,21 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper,OrderPay> {
result= HTTPUtils.doGet(url); result= HTTPUtils.doGet(url);
} }
log.error("---支付回调处理---orderNo======="+orderNo+"---result==="+result); log.error("---支付回调处理---orderNo======="+orderNo+"---result==="+result);
//支付成功,添加积分
if(pay.getStatus() == 1) {
JSONObject jsonObject = new JSONObject();
jsonObject.put("userId", pay.getUserId());
jsonObject.put("amount", pay.getAmount());
jsonObject.put("channelId", pay.getOrderNo());
if(pay.getChannel() == 1) {//租车
jsonObject.put("integralRuleCode", "RENTRV");
} else if(pay.getChannel() == 2) { //旅游
jsonObject.put("integralRuleCode", "BUYROUT");
} else if(pay.getChannel() == 3) { //会员
jsonObject.put("integralRuleCode", "BUYMEMBER");
}
mqServiceBiZ.sendMessage(MQconstant.INTEGRAL_EXCHANGE, MQconstant.INTEGRAL_ROUTING_KEY, jsonObject.toJSONString());
}
} }
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment