| | |
| | | <version>0.0.1-SNAPSHOT</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.yeshi</groupId> |
| | | <artifactId>utils</artifactId> |
| | | <version>0.0.2-SNAPSHOT</version> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | |
| | | <build> |
| | |
| | | //开奖信息 |
| | | private LuckyActivityOpenInfo openInfo; |
| | | |
| | | //banner图片 |
| | | @Transient |
| | | private List<LuckyActivityImage> bannerList; |
| | | |
| | | public List<LuckyActivityImage> getBannerList() { |
| | | return bannerList; |
| | | } |
| | | |
| | | public void setBannerList(List<LuckyActivityImage> bannerList) { |
| | | this.bannerList = bannerList; |
| | | } |
| | | |
| | | public List<LuckyActivityAwards> getAwardsList() { |
| | | return awardsList; |
| | |
| | | package com.ks.lucky.pojo.DO; |
| | | |
| | | import org.yeshi.utils.mybatis.Column; |
| | | import org.yeshi.utils.mybatis.Table; |
| | | |
| | | import org.yeshi.utils.generater.mybatis.Column; |
| | | import org.yeshi.utils.generater.mybatis.Table; |
| | | |
| | | import java.io.Serializable; |
| | | import java.math.BigDecimal; |
| | |
| | | package com.ks.lucky.pojo.DO; |
| | | |
| | | import org.springframework.data.annotation.Transient; |
| | | import org.yeshi.utils.mybatis.Table; |
| | | import org.yeshi.utils.generater.mybatis.Table; |
| | | |
| | | import javax.validation.Valid; |
| | | import javax.validation.constraints.NotEmpty; |
New file |
| | |
| | | package com.ks.lucky.pojo.DO; |
| | | |
| | | import org.springframework.data.annotation.Id; |
| | | import org.springframework.data.mongodb.core.mapping.Document; |
| | | |
| | | import javax.validation.constraints.NotEmpty; |
| | | import javax.validation.constraints.NotNull; |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | |
| | | @Document(collation = "luckyImage") |
| | | public class LuckyActivityImage implements Serializable { |
| | | public enum LuckyImageType { |
| | | banner("banner"); |
| | | |
| | | private LuckyImageType(String type) { |
| | | |
| | | } |
| | | } |
| | | |
| | | @Id |
| | | private String id; |
| | | |
| | | @NotNull(message = "活动ID不能为空") |
| | | private Long activityId; |
| | | @NotEmpty(message = "链接不能为空") |
| | | private String url; |
| | | |
| | | private Integer weight; |
| | | @NotNull(message = "图片类型不能为空") |
| | | private LuckyImageType type; |
| | | |
| | | private Date createTime; |
| | | |
| | | private Date updatetime; |
| | | |
| | | public Long getActivityId() { |
| | | return activityId; |
| | | } |
| | | |
| | | public void setActivityId(Long activityId) { |
| | | this.activityId = activityId; |
| | | } |
| | | |
| | | public Integer getWeight() { |
| | | return weight; |
| | | } |
| | | |
| | | public void setWeight(Integer weight) { |
| | | this.weight = weight; |
| | | } |
| | | |
| | | public String getId() { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(String id) { |
| | | this.id = id; |
| | | } |
| | | |
| | | public String getUrl() { |
| | | return url; |
| | | } |
| | | |
| | | public void setUrl(String url) { |
| | | this.url = url; |
| | | } |
| | | |
| | | public LuckyImageType getType() { |
| | | return type; |
| | | } |
| | | |
| | | public void setType(LuckyImageType type) { |
| | | this.type = type; |
| | | } |
| | | |
| | | public Date getCreateTime() { |
| | | return createTime; |
| | | } |
| | | |
| | | public void setCreateTime(Date createTime) { |
| | | this.createTime = createTime; |
| | | } |
| | | |
| | | public Date getUpdatetime() { |
| | | return updatetime; |
| | | } |
| | | |
| | | public void setUpdatetime(Date updatetime) { |
| | | this.updatetime = updatetime; |
| | | } |
| | | } |
| | |
| | | package com.ks.lucky.pojo.DTO.mq; |
| | | |
| | | import java.io.Serializable; |
| | | import com.ks.lucky.utils.LuckyCMQConstant; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 活动助力 |
| | | */ |
| | | public class ActivityAssistMsgDTO implements Serializable { |
| | | public class ActivityAssistMsgDTO extends BaseMQMsg { |
| | | //活动ID |
| | | private Long activityId; |
| | | //应用ID |
| | |
| | | this.targetUid = targetUid; |
| | | this.success = success; |
| | | this.dateTime = dateTime; |
| | | this.setCmqMsgTag(LuckyCMQConstant.TAG_ASSIST); |
| | | } |
| | | |
| | | public Boolean getSuccess() { |
| | |
| | | package com.ks.lucky.pojo.DTO.mq; |
| | | |
| | | import com.ks.lucky.pojo.DO.LuckyActivityAwardResult; |
| | | import com.ks.lucky.utils.LuckyCMQConstant; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 中奖消息 |
| | | */ |
| | | public class ActivityDrawnMsgDTO implements Serializable { |
| | | public class ActivityDrawnMsgDTO extends BaseMQMsg { |
| | | //用户信息 |
| | | private String uid; |
| | | private Long appId; |
| | |
| | | dto.setAwardResultStateDesc(result.getStateDesc()); |
| | | dto.setDateTime(new Date()); |
| | | dto.setUid(result.getUid()); |
| | | dto.setCmqMsgTag(LuckyCMQConstant.TAG_ACTIVITY_DRAWN); |
| | | return dto; |
| | | } |
| | | |
| | |
| | | package com.ks.lucky.pojo.DTO.mq; |
| | | |
| | | import com.ks.lucky.pojo.DO.LuckyActivityJoinRecord; |
| | | import com.ks.lucky.utils.LuckyCMQConstant; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | |
| | | /** |
| | | * 中奖消息 |
| | | */ |
| | | public class ActivityJoinMsgDTO implements Serializable { |
| | | public class ActivityJoinMsgDTO extends BaseMQMsg { |
| | | //用户信息 |
| | | private Long joinId; |
| | | //用户ID |
| | |
| | | dto.setUid(record.getUid()); |
| | | dto.setJoinId(record.getId()); |
| | | dto.setDateTime(new Date()); |
| | | dto.setCmqMsgTag(LuckyCMQConstant.TAG_ACTIVITY_JOIN); |
| | | return dto; |
| | | } |
| | | |
| | |
| | | package com.ks.lucky.pojo.DTO.mq; |
| | | |
| | | import java.io.Serializable; |
| | | import com.ks.lucky.utils.LuckyCMQConstant; |
| | | |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * 获取状态改变消息 |
| | | */ |
| | | public class ActivityStateChangeMsgDTO implements Serializable { |
| | | public class ActivityStateChangeMsgDTO extends BaseMQMsg { |
| | | //活动ID |
| | | private Long activityId; |
| | | //状态 |
| | |
| | | this.state = state; |
| | | this.stateDesc = stateDesc; |
| | | this.dateTime = dateTime; |
| | | this.setCmqMsgTag(LuckyCMQConstant.TAG_ACTIVITY_STATE_CHANGE); |
| | | } |
| | | |
| | | public Long getActivityId() { |
New file |
| | |
| | | package com.ks.lucky.pojo.DTO.mq; |
| | | |
| | | import java.io.Serializable; |
| | | |
| | | public class BaseMQMsg implements Serializable { |
| | | private String cmqMsgTag; |
| | | |
| | | public String getCmqMsgTag() { |
| | | return cmqMsgTag; |
| | | } |
| | | |
| | | public void setCmqMsgTag(String cmqMsgTag) { |
| | | this.cmqMsgTag = cmqMsgTag; |
| | | } |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="UTF-8"?> |
| | | <project xmlns="http://maven.apache.org/POM/4.0.0" |
| | | xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" |
| | | xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> |
| | | <parent> |
| | | <artifactId>DayLucky</artifactId> |
| | | <groupId>com.ks</groupId> |
| | | <version>0.0.1-SNAPSHOT</version> |
| | | </parent> |
| | | <modelVersion>4.0.0</modelVersion> |
| | | |
| | | <artifactId>generater-maven-plugin</artifactId> |
| | | <name>demo-mavne-plugin Maven Mojo</name> |
| | | <packaging>maven-plugin</packaging> |
| | | <version>1.0.0</version> |
| | | |
| | | <dependencies> |
| | | |
| | | <dependency> |
| | | <groupId>org.apache.maven</groupId> |
| | | <artifactId>maven-plugin-api</artifactId> |
| | | <version>3.5.2</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>org.apache.maven.plugin-tools</groupId> |
| | | <artifactId>maven-plugin-annotations</artifactId> |
| | | <version>3.5.2</version> |
| | | </dependency> |
| | | |
| | | <dependency> |
| | | <groupId>com.yeshi</groupId> |
| | | <artifactId>utils</artifactId> |
| | | <version>0.0.2-SNAPSHOT</version> |
| | | </dependency> |
| | | |
| | | </dependencies> |
| | | <build> |
| | | <plugins> |
| | | <plugin> |
| | | <groupId>org.apache.maven.plugins</groupId> |
| | | <artifactId>maven-plugin-plugin</artifactId> |
| | | <version>3.5.2</version> |
| | | </plugin> |
| | | </plugins> |
| | | </build> |
| | | </project> |
New file |
| | |
| | | package com.ks.generater; |
| | | |
| | | import org.apache.maven.plugin.AbstractMojo; |
| | | import org.apache.maven.plugin.MojoExecutionException; |
| | | import org.apache.maven.plugin.MojoFailureException; |
| | | import org.apache.maven.plugins.annotations.Mojo; |
| | | import org.apache.maven.plugins.annotations.Parameter; |
| | | |
| | | |
| | | @Mojo(name="mongoDao") |
| | | public class GeneraterMojo extends AbstractMojo { |
| | | |
| | | @Parameter(property = "configurationFile",defaultValue = "123") |
| | | private String configureFilePath; |
| | | |
| | | @Override |
| | | public void execute() throws MojoExecutionException, MojoFailureException { |
| | | getLog().info("Hello Mojo123"); |
| | | getLog().info("configureFilePath:" + configureFilePath); |
| | | |
| | | // InputStream inputStream = GeneraterMojo.class.getClassLoader().getResourceAsStream(configureFilePath); |
| | | //读取配置文件 |
| | | |
| | | |
| | | } |
| | | } |
| | |
| | | <module>service-lucky</module> |
| | | <module>service-app</module> |
| | | <module>service-daylucky</module> |
| | | <module>generater</module> |
| | | |
| | | </modules> |
| | | <parent> |
| | |
| | | @RequestMapping("api/client/activity/assist") |
| | | public class ActivityAssistController { |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinAssistService luckyActivityJoinAssistService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinService luckyActivityJoinService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityService luckyActivityService; |
| | | |
| | | @Resource |
| | |
| | | @RequestMapping("api/client/activity/awards") |
| | | public class ActivityAwardsController { |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardResultService luckyActivityAwardResultService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardService luckyActivityAwardService; |
| | | |
| | | @Resource |
| | |
| | | @RequestMapping("api/client/activity") |
| | | public class ActivityController { |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityService luckyActivityService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinAssistService luckyActivityJoinAssistService; |
| | | |
| | | @Resource |
| | |
| | | @RequestMapping("api/client/activity/join") |
| | | public class ActivityJoinController { |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinService luckyActivityJoinService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardResultService luckyActivityAwardResultService; |
| | | |
| | | @Resource |
| | |
| | | @RequestMapping("api/client/activity/coupon") |
| | | public class ActivityLuckyCouponController { |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityUserWeightRecordService luckyActivityUserWeightRecordService; |
| | | |
| | | |
| | |
| | | package com.ks.daylucky.pojo.DO; |
| | | |
| | | import org.yeshi.utils.mybatis.Column; |
| | | import org.yeshi.utils.mybatis.Table; |
| | | import org.yeshi.utils.generater.mybatis.Column; |
| | | import org.yeshi.utils.generater.mybatis.Table; |
| | | |
| | | import javax.validation.constraints.NotEmpty; |
| | | import javax.validation.constraints.NotNull; |
| | |
| | | |
| | | private Long id; |
| | | private String name; |
| | | private String poster; |
| | | private Long leftTime; |
| | | private List<String> bannerList; |
| | | |
| | | private SponsorVO sponsor; |
| | | private SponsorAdBean sponsorAd; |
| | | |
| | | private List<ActivityAwardVO> awardList; |
| | | |
| | | public List<String> getBannerList() { |
| | | return bannerList; |
| | | } |
| | | |
| | | public void setBannerList(List<String> bannerList) { |
| | | this.bannerList = bannerList; |
| | | } |
| | | |
| | | //获取期号 |
| | | private String dateNumber; |
| | |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getPoster() { |
| | | return poster; |
| | | } |
| | | |
| | | public void setPoster(String poster) { |
| | | this.poster = poster; |
| | | } |
| | | |
| | | public Long getLeftTime() { |
| | |
| | | package com.ks.daylucky.pojo.VO; |
| | | |
| | | import com.ks.daylucky.pojo.VO.common.JumpDetailVO; |
| | | |
| | | public class UserMsgContentVO { |
| | | private String title; |
| | | private String content; |
| | | private JumpDetailVO jump; |
| | | |
| | | public UserMsgContentVO(String title, String content) { |
| | | this.title = title; |
| | | this.content = content; |
| | | } |
| | | |
| | | public UserMsgContentVO(String title, String content, JumpDetailVO jump) { |
| | | this.title = title; |
| | | this.content = content; |
| | | this.jump = jump; |
| | | } |
| | | |
| | | public String getTitle() { |
| | | return title; |
| | | } |
| | |
| | | |
| | | public class JumpDetailVO { |
| | | public enum JumpType { |
| | | alipayLife("支付宝生活号"); |
| | | alipayLife("支付宝生活号"),page("普通页面"); |
| | | |
| | | private JumpType(String name) { |
| | | |
| | |
| | | |
| | | @Service |
| | | public class ActivityServiceImpl implements ActivityService { |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityService luckyActivityService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinService luckyActivityJoinService; |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardResultService luckyActivityAwardResultService; |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardService luckyActivityAwardService; |
| | | |
| | | @Resource |
| | |
| | | import org.yeshi.utils.TimeUtil; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | public class ActivityDetailVOFactory { |
| | |
| | | bean.setLeftTime(leftTime); |
| | | } |
| | | bean.setName(activity.getName()); |
| | | bean.setPoster(activity.getMaterialPoster()); |
| | | if (activity.getBannerList() == null || activity.getBannerList().size() == 0) { |
| | | bean.setBannerList(Arrays.asList(new String[]{activity.getMaterialPoster()})); |
| | | } else { |
| | | List<String> bannerList = new ArrayList<>(); |
| | | for (LuckyActivityImage image : activity.getBannerList()) { |
| | | bannerList.add(image.getUrl()); |
| | | } |
| | | bean.setBannerList(bannerList); |
| | | } |
| | | bean.setSponsor(ActivityListItemInfoVOFactory.create(activity.getSponsorInfo().getSponsors())); |
| | | bean.setSponsorAd(create(activity.getSponsorInfo())); |
| | | bean.setDateNumber("活动期号:" + ActivityUtil.getActivityDateNumber(activity.getId())); |
| | |
| | | import com.ks.daylucky.pojo.DTO.msg.LuckyMsgContent; |
| | | import com.ks.daylucky.pojo.VO.UserMsgContentVO; |
| | | import com.ks.daylucky.pojo.VO.UserMsgVO; |
| | | import com.ks.daylucky.pojo.VO.common.JumpDetailVO; |
| | | import net.sf.json.JSONObject; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | |
| | | private static List<UserMsgContentVO> create(LuckyMsgContent luckyMsgContent) { |
| | | LuckyMsgContent.LuckyMsgType luckyMsgType = luckyMsgContent.getLuckyMsgType(); |
| | | List<UserMsgContentVO> voList = new ArrayList<>(); |
| | | voList.add(new UserMsgContentVO("活动期号", getDateNumber(luckyMsgContent.getDateNumber()))); |
| | | JSONObject params = new JSONObject(); |
| | | params.put("url", "/pages/activity-detail/activity-detail?id=" + luckyMsgContent.getActivityId()); |
| | | voList.add(new UserMsgContentVO("活动期号", getDateNumber(luckyMsgContent.getDateNumber()), new JumpDetailVO(JumpDetailVO.JumpType.page, null, params))); |
| | | |
| | | if (luckyMsgType == LuckyMsgContent.LuckyMsgType.joinSuccess) { |
| | | voList.add(new UserMsgContentVO("状态", "参与成功")); |
| | |
| | | import com.qcloud.cmq.Message; |
| | | import org.yeshi.utils.CMQUtil; |
| | | |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | public class CMQManager { |
| | |
| | | cmqUtil.createQueue(QUEUENAME_DAY_LUCKY_ACTIVITY_DRAWN, 1024 * 1024); |
| | | |
| | | try { |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_STATE_CHANGE, "msg_activity-state-change", QUEUENAME_DAY_LUCKY_MSG); |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_STATE_CHANGE, QUEUENAME_DAY_LUCKY_MSG, QUEUENAME_DAY_LUCKY_MSG); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | try { |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ASSIST, "msg_assist", QUEUENAME_DAY_LUCKY_MSG); |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ASSIST, QUEUENAME_DAY_LUCKY_MSG, QUEUENAME_DAY_LUCKY_MSG); |
| | | } catch (Exception e) { |
| | | |
| | | } |
| | | |
| | | try { |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN, "msg_activity_drawn", QUEUENAME_DAY_LUCKY_MSG); |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN, QUEUENAME_DAY_LUCKY_MSG, QUEUENAME_DAY_LUCKY_MSG); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | | |
| | | try { |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_JOIN, "msg_activity_join", QUEUENAME_DAY_LUCKY_MSG); |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_JOIN, QUEUENAME_DAY_LUCKY_MSG, QUEUENAME_DAY_LUCKY_MSG); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | | try { |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN, "notify_activity_drawn", QUEUENAME_DAY_LUCKY_ACTIVITY_DRAWN); |
| | | cmqUtil.subscribeTopic(LuckyCMQConstant.TOPIC_ACTIVITY_DRAWN, QUEUENAME_DAY_LUCKY_ACTIVITY_DRAWN, QUEUENAME_DAY_LUCKY_ACTIVITY_DRAWN); |
| | | } catch (Exception e) { |
| | | } |
| | | |
| | |
| | | import com.ks.lucky.pojo.DO.LuckyActivityAwardResult; |
| | | import com.ks.lucky.pojo.DO.LuckyActivityAwards; |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityDrawnMsgDTO; |
| | | import com.ks.lucky.pojo.DTO.mq.BaseMQMsg; |
| | | import com.ks.lucky.remote.service.LuckyActivityAwardResultService; |
| | | import com.ks.lucky.remote.service.LuckyActivityAwardService; |
| | | import com.ks.lucky.utils.LuckyCMQConstant; |
| | |
| | | |
| | | Logger logger = LoggerFactory.getLogger(ActivityDrawnNotifyConsumer.class); |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardResultService luckyActivityAwardResultService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardService luckyActivityAwardService; |
| | | |
| | | @Resource |
| | |
| | | List<Message> messageList = CMQManager.getInstance().consumeMsgMsg(16); |
| | | if (messageList != null) { |
| | | for (Message message : messageList) { |
| | | Vector<String> vectors = message.msgTag; |
| | | if (vectors.contains(LuckyCMQConstant.TAG_ACTIVITY_DRAWN)) { |
| | | BaseMQMsg mqMsg = JsonUtil.getSimpleGson().fromJson(message.msgBody, BaseMQMsg.class); |
| | | String tag=mqMsg.getCmqMsgTag(); |
| | | if (tag.equalsIgnoreCase(LuckyCMQConstant.TAG_ACTIVITY_DRAWN)) { |
| | | |
| | | try { |
| | | //活动状态改变 |
| | |
| | | import com.ks.daylucky.util.mq.CMQManager; |
| | | import com.ks.lucky.pojo.DO.*; |
| | | import com.ks.lucky.pojo.DTO.ActivitySimpleUser; |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityAssistMsgDTO; |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityDrawnMsgDTO; |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityJoinMsgDTO; |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityStateChangeMsgDTO; |
| | | import com.ks.lucky.pojo.DTO.mq.*; |
| | | import com.ks.lucky.remote.service.LuckyActivityAwardResultService; |
| | | import com.ks.lucky.remote.service.LuckyActivityAwardService; |
| | | import com.ks.lucky.remote.service.LuckyActivityJoinAssistService; |
| | |
| | | import javax.annotation.Resource; |
| | | import java.util.ArrayList; |
| | | import java.util.List; |
| | | import java.util.Vector; |
| | | |
| | | public class MsgConsumer implements CMQConsumeRunner { |
| | | |
| | |
| | | @Resource |
| | | private UserInfoService userInfoService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinAssistService luckyActivityJoinAssistService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityJoinService luckyActivityJoinService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardResultService luckyActivityAwardResultService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityAwardService luckyActivityAwardService; |
| | | |
| | | @Resource |
| | |
| | | List<Message> messageList = CMQManager.getInstance().consumeMsgMsg(16); |
| | | if (messageList != null) { |
| | | for (Message message : messageList) { |
| | | Vector<String> vectors = message.msgTag; |
| | | if (vectors.contains(LuckyCMQConstant.TAG_ACTIVITY_STATE_CHANGE)) { |
| | | BaseMQMsg baseMQMsg = JsonUtil.getSimpleGson().fromJson(message.msgBody, BaseMQMsg.class); |
| | | String tag = baseMQMsg.getCmqMsgTag(); |
| | | |
| | | if (tag.equalsIgnoreCase(LuckyCMQConstant.TAG_ACTIVITY_STATE_CHANGE)) { |
| | | //活动状态改变 |
| | | ActivityStateChangeMsgDTO dto = JsonUtil.getSimpleGson().fromJson(message.msgBody, ActivityStateChangeMsgDTO.class); |
| | | List<ActivitySimpleUser> userList; |
| | |
| | | } |
| | | |
| | | |
| | | } else if (vectors.contains(LuckyCMQConstant.TAG_ACTIVITY_JOIN)) { |
| | | } else if (tag.equalsIgnoreCase(LuckyCMQConstant.TAG_ACTIVITY_JOIN)) { |
| | | ActivityJoinMsgDTO dto = JsonUtil.getSimpleGson().fromJson(message.msgBody, ActivityJoinMsgDTO.class); |
| | | UserMsgSettings settings = getUserMsgSetting(Long.parseLong(dto.getUid())); |
| | | if (settings.getJoinActivityMsg()) { |
| | |
| | | } |
| | | |
| | | |
| | | } else if (vectors.contains(LuckyCMQConstant.TAG_ASSIST)) { |
| | | } else if (tag.equalsIgnoreCase(LuckyCMQConstant.TAG_ASSIST)) { |
| | | //助力 |
| | | ActivityAssistMsgDTO dto = JsonUtil.getSimpleGson().fromJson(message.msgBody, ActivityAssistMsgDTO.class); |
| | | UserMsgSettings settings = getUserMsgSetting(Long.parseLong(dto.getUid())); |
| | |
| | | } |
| | | } |
| | | |
| | | } else if (vectors.contains(LuckyCMQConstant.TAG_ACTIVITY_DRAWN)) { |
| | | } else if (tag.equalsIgnoreCase(LuckyCMQConstant.TAG_ACTIVITY_DRAWN)) { |
| | | ActivityDrawnMsgDTO dto = JsonUtil.getSimpleGson().fromJson(message.msgBody, ActivityDrawnMsgDTO.class); |
| | | switch (dto.getAwardResultState()) { |
| | | case LuckyActivityAwardResult.STATE_OUT_OF_DATE: |
| | |
| | | package com.ks; |
| | | |
| | | import com.ks.daylucky.pojo.DO.Announcement; |
| | | import com.ks.lucky.pojo.DO.LuckyActivity; |
| | | import com.ks.lucky.pojo.DO.LuckyActivityAwardResultExtra; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.yeshi.utils.mybatis.ColumnParseUtil; |
| | | import org.yeshi.utils.mybatis.MyBatisMapperUtil; |
| | | import org.yeshi.utils.generater.mybatis.MyBatisMapperUtil; |
| | | |
| | | public class MyBatisTest { |
| | | |
| | |
| | | @Resource |
| | | private ActivityService activityService; |
| | | |
| | | @Reference(version = "1.0.0") |
| | | @Reference(version = "1.0.0",check = false) |
| | | private LuckyActivityService luckyActivityService; |
| | | |
| | | |
| | |
| | | } catch (UserMsgException e) { |
| | | |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | <!--</dependency>--> |
| | | <!--</dependencies>--> |
| | | <!--</plugin>--> |
| | | |
| | | <plugin> |
| | | <groupId>com.ks</groupId> |
| | | <artifactId>generater-maven-plugin</artifactId> |
| | | <version>1.0.0</version> |
| | | <configuration> |
| | | <!--配置文件的位置--> |
| | | <configurationFile>src/main/resources/generatorConfig.xml</configurationFile> |
| | | </configuration> |
| | | |
| | | </plugin> |
| | | </plugins> |
| | | </build> |
| | | |
| | |
| | | import org.springframework.context.annotation.Bean; |
| | | import org.springframework.context.annotation.Configuration; |
| | | |
| | | @Configuration |
| | | //@Configuration |
| | | public class XXLJobConfig { |
| | | |
| | | Logger log = LoggerFactory.getLogger(XXLJobConfig.class); |
New file |
| | |
| | | package com.ks.lucky.dao; |
| | | |
| | | import com.ks.lucky.pojo.DO.LuckyActivityImage; |
| | | import com.ks.lib.common.dao.MongodbBaseDao; |
| | | import org.springframework.data.domain.Sort; |
| | | import org.springframework.data.mongodb.core.query.Criteria; |
| | | import org.springframework.data.mongodb.core.query.Query; |
| | | import org.springframework.data.mongodb.core.query.Update; |
| | | import org.springframework.stereotype.Repository; |
| | | |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Repository |
| | | public class LuckyActivityImageDao extends MongodbBaseDao<LuckyActivityImage> { |
| | | |
| | | public void updateSelective(LuckyActivityImage bean) { |
| | | Query query = new Query(); |
| | | Update update = new Update(); |
| | | query.addCriteria(Criteria.where("id").is(bean.getId())); |
| | | if (bean.getUrl() != null) { |
| | | update.set("url", bean.getUrl()); |
| | | } |
| | | if (bean.getType() != null) { |
| | | update.set("type", bean.getType()); |
| | | } |
| | | |
| | | if (bean.getWeight() != null) { |
| | | update.set("weight", bean.getWeight()); |
| | | } |
| | | |
| | | if (bean.getCreateTime() != null) { |
| | | update.set("createTime", bean.getCreateTime()); |
| | | } |
| | | update.set("updateTime", new Date()); |
| | | update(query, update); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 根据活动ID获取图片 |
| | | * |
| | | * @param activityId |
| | | * @param page |
| | | * @param pageSize |
| | | * @return |
| | | */ |
| | | public List<LuckyActivityImage> listByActivityId(Long activityId, LuckyActivityImage.LuckyImageType type, int page, int pageSize) { |
| | | Query query = new Query(); |
| | | query.addCriteria(Criteria.where("activityId").is(activityId).and("type").is(type)); |
| | | query.skip((page - 1) * pageSize); |
| | | query.limit(pageSize); |
| | | query.with(Sort.by(Sort.Order.desc("weight"))); |
| | | return findList(query); |
| | | } |
| | | } |
New file |
| | |
| | | package com.ks.lucky.service; |
| | | |
| | | import com.ks.lib.common.exception.ParamsException; |
| | | import com.ks.lucky.pojo.DO.LuckyActivityImage; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * 活动图片服务 |
| | | */ |
| | | public interface LuckyActivityImageService { |
| | | |
| | | |
| | | /** |
| | | * 添加 |
| | | * |
| | | * @param image |
| | | * @throws ParamsException |
| | | */ |
| | | public void add(LuckyActivityImage image) throws ParamsException; |
| | | |
| | | /** |
| | | * @param activityId |
| | | * @return |
| | | */ |
| | | public List<LuckyActivityImage> listByActivityId(Long activityId, LuckyActivityImage.LuckyImageType type); |
| | | |
| | | /** |
| | | * 根据主键查询 |
| | | * |
| | | * @param activityId |
| | | * @return |
| | | */ |
| | | public List<String> listUrlByActivityId(Long activityId,LuckyActivityImage.LuckyImageType type); |
| | | |
| | | |
| | | /** |
| | | * 删除 |
| | | * |
| | | * @param id |
| | | */ |
| | | public void deleteById(String id); |
| | | |
| | | } |
New file |
| | |
| | | package com.ks.lucky.service.impl; |
| | | |
| | | import com.ks.lib.common.exception.ParamsException; |
| | | import com.ks.lucky.dao.LuckyActivityImageDao; |
| | | import com.ks.lucky.pojo.DO.LuckyActivityImage; |
| | | import com.ks.lucky.service.LuckyActivityImageService; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.validation.Valid; |
| | | |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.validation.annotation.Validated; |
| | | |
| | | import java.util.ArrayList; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | @Service |
| | | public class LuckyActivityImageServiceImpl implements LuckyActivityImageService { |
| | | |
| | | @Resource |
| | | private LuckyActivityImageDao luckyActivityImageDao; |
| | | |
| | | @Validated |
| | | @Override |
| | | public void add(@Valid LuckyActivityImage image) throws ParamsException { |
| | | if (image.getWeight() == null) { |
| | | image.setWeight(0); |
| | | } |
| | | |
| | | if (image.getCreateTime() == null) { |
| | | image.setCreateTime(new Date()); |
| | | } |
| | | |
| | | luckyActivityImageDao.save(image); |
| | | } |
| | | |
| | | @Override |
| | | public List<LuckyActivityImage> listByActivityId(Long activityId, LuckyActivityImage.LuckyImageType type) { |
| | | |
| | | return luckyActivityImageDao.listByActivityId(activityId, type, 1, 100); |
| | | } |
| | | |
| | | @Override |
| | | public List<String> listUrlByActivityId(Long activityId, LuckyActivityImage.LuckyImageType type) { |
| | | List<LuckyActivityImage> list = listByActivityId(activityId, type); |
| | | List<String> urlList = new ArrayList<>(); |
| | | if (list != null) { |
| | | for (LuckyActivityImage image : list) { |
| | | urlList.add(image.getUrl()); |
| | | } |
| | | } |
| | | return urlList; |
| | | } |
| | | |
| | | @Override |
| | | public void deleteById(String id) { |
| | | luckyActivityImageDao.delete(id); |
| | | } |
| | | |
| | | |
| | | } |
| | |
| | | import com.ks.lucky.pojo.DO.*; |
| | | import com.ks.lucky.query.ActivityDaoQuery; |
| | | import com.ks.lucky.remote.service.LuckyActivityService; |
| | | import com.ks.lucky.service.LuckyActivityImageService; |
| | | import com.ks.lucky.service.LuckyMQService; |
| | | import com.ks.lucky.service.impl.*; |
| | | import com.ks.lucky.util.mq.LuckyMQFactory; |
| | |
| | | |
| | | @Resource |
| | | private LuckyMQService luckyMQService; |
| | | |
| | | @Resource |
| | | private LuckyActivityImageService luckyActivityImageService; |
| | | |
| | | |
| | | private void notNull(LuckyActivity activity) throws LuckyActivityException { |
| | |
| | | if (activity == null) { |
| | | return null; |
| | | } |
| | | |
| | | //加载图片信息 |
| | | List<LuckyActivityImage> bannerList = luckyActivityImageService.listByActivityId(id, LuckyActivityImage.LuckyImageType.banner); |
| | | activity.setBannerList(bannerList); |
| | | |
| | | //加载开奖信息 |
| | | LuckyActivityOpenInfo openInfo = luckyActivityOpenInfoManager.getOpenInfo(activity.getId()); |
| | | activity.setOpenInfo(openInfo); |
New file |
| | |
| | | package com.ks; |
| | | |
| | | import com.ks.lib.common.dao.MongodbBaseDao; |
| | | import com.ks.lucky.dao.LuckyActivityImageDao; |
| | | import com.ks.lucky.pojo.DO.LuckyActivityImage; |
| | | import com.ks.lucky.service.LuckyActivityImageService; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.yeshi.utils.generater.SpringComponentGenerater; |
| | | import org.yeshi.utils.generater.entity.MongoDBDaoData; |
| | | import org.yeshi.utils.generater.entity.ServiceData; |
| | | |
| | | public class MongoTest { |
| | | |
| | | |
| | | @Test |
| | | public void createDao() { |
| | | try { |
| | | SpringComponentGenerater.createMongoDao(new MongoDBDaoData.Builder().setBaseDaoClass(MongodbBaseDao.class).setDaoPackageName("com.ks.lucky.dao").setEntityClass(LuckyActivityImage.class).create(), "D:\\workspace\\DayLucky\\service-lucky\\src\\main\\java\\com\\ks\\lucky\\dao"); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | |
| | | @Test |
| | | public void createService() { |
| | | try { |
| | | SpringComponentGenerater.createService(new ServiceData.Builder().setPackageName("com.ks.lucky.service").setDaoClass(LuckyActivityImage.class).setEntityClass(LuckyActivityImage.class).build(), "D:\\workspace\\DayLucky\\service-lucky\\src\\main\\java\\com\\ks\\lucky\\service\\"); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | |
| | | |
| | | @Test |
| | | public void createServiceImpl() { |
| | | try { |
| | | SpringComponentGenerater.createServiceImpl(new ServiceData.Builder().setPackageName("com.ks.lucky.service.impl").setServiceClass(LuckyActivityImageService.class).setDaoClass(LuckyActivityImageDao.class).setEntityClass(LuckyActivityImage.class).build(), "D:\\workspace\\DayLucky\\service-lucky\\src\\main\\java\\com\\ks\\lucky\\service\\impl\\"); |
| | | } catch (Exception e) { |
| | | e.printStackTrace(); |
| | | } |
| | | } |
| | | // |
| | | // @Test |
| | | // public void createException() { |
| | | // try { |
| | | // SpringComponentGenerater.createException(new ExceptionData.Builder().setPackageName("com.ks.daylucky.exception").setBaseClass(BaseException.class).setEntityClass(LuckyImage.class).build(), "D:\\workspace\\DayLucky\\service-daylucky\\src\\main\\java\\com\\ks\\daylucky\\exception\\"); |
| | | // } catch (Exception e) { |
| | | // e.printStackTrace(); |
| | | // } |
| | | // } |
| | | |
| | | } |
| | |
| | | |
| | | import com.ks.lucky.pojo.DO.*; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.yeshi.utils.mybatis.ColumnParseUtil; |
| | | import org.yeshi.utils.generater.mybatis.ColumnParseUtil; |
| | | |
| | | public class MyBatisTest { |
| | | |
New file |
| | |
| | | package com.ks.lucky; |
| | | |
| | | import com.ks.lucky.pojo.DTO.mq.ActivityJoinMsgDTO; |
| | | import com.ks.lucky.remote.service.LuckyActivityJoinService; |
| | | import com.ks.lucky.util.mq.CMQManager; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.springframework.boot.test.context.SpringBootTest; |
| | | |
| | | import javax.annotation.Resource; |
| | | |
| | | @SpringBootTest |
| | | public class CMQTest { |
| | | |
| | | @Resource |
| | | private LuckyActivityJoinService luckyActivityJoinService; |
| | | |
| | | @Test |
| | | public void addJoinMsg() { |
| | | |
| | | CMQManager.getInstance().publishActivityJoinMsg(ActivityJoinMsgDTO.create(luckyActivityJoinService.getJoinRecord(6L))); |
| | | } |
| | | |
| | | } |
| | |
| | | package com.ks.lucky; |
| | | |
| | | import com.ks.lucky.pojo.DO.LuckyActivityAwardMaterial; |
| | | import com.ks.lucky.pojo.DO.LuckySponsorAd; |
| | | import org.junit.jupiter.api.Test; |
| | | import org.yeshi.utils.mongo.MongoDaoUtil; |
| | | import org.yeshi.utils.generater.mongo.MongoDaoUtil; |
| | | |
| | | public class DaoTest { |
| | | |