admin
2020-12-01 5cc5a1103a95765aeec6234d1c15220d132eea9a
活动添加实际结束时间
10个文件已修改
109 ■■■■ 已修改文件
facade-lucky/src/main/java/com/ks/lucky/pojo/DO/LuckyActivity.java 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
facade-lucky/src/main/java/com/ks/lucky/remote/service/LuckyActivityJoinAssistService.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
facade-lucky/src/main/java/com/ks/lucky/remote/service/LuckyActivityJoinService.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinServiceImpl.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/main/resources/mapper/LuckyActivityMapper.xml 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/test/java/com/ks/MyBatisTest.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/test/java/com/ks/lucky/ActivityTest.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
service-lucky/src/test/java/com/ks/lucky/JoinTest.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
facade-lucky/src/main/java/com/ks/lucky/pojo/DO/LuckyActivity.java
@@ -10,7 +10,7 @@
import java.util.List;
@Valid
public class LuckyActivity  implements Serializable {
public class LuckyActivity implements Serializable {
    //未提交审核
@@ -77,8 +77,11 @@
    @NotNull(message = "开始时间不能为空")
    private Date startTime;
    private Date preFinishTime;
    @NotNull(message = "结束时间不能为空")
    private Date finishTime;
    private Date actualFinishTime;
    private Date preOpenTime;
@@ -237,14 +240,6 @@
        this.startTime = startTime;
    }
    public Date getFinishTime() {
        return finishTime;
    }
    public void setFinishTime(Date finishTime) {
        this.finishTime = finishTime;
    }
    public Date getPreOpenTime() {
        return preOpenTime;
    }
@@ -268,4 +263,20 @@
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public Date getPreFinishTime() {
        return preFinishTime;
    }
    public void setPreFinishTime(Date preFinishTime) {
        this.preFinishTime = preFinishTime;
    }
    public Date getActualFinishTime() {
        return actualFinishTime;
    }
    public void setActualFinishTime(Date actualFinishTime) {
        this.actualFinishTime = actualFinishTime;
    }
}
facade-lucky/src/main/java/com/ks/lucky/remote/service/LuckyActivityJoinAssistService.java
@@ -4,6 +4,8 @@
import com.ks.lucky.exception.LuckyActivityJoinAssistException;
import com.ks.lucky.pojo.DO.LuckyActivityJoinAssist;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
@@ -20,7 +22,7 @@
     * @param targetUid
     * @throws LuckyActivityJoinAssistException
     */
    public void assist(Long activityId, String appKey, String uid, String targetUid) throws LuckyActivityException, LuckyActivityJoinAssistException;
    public void assist(@NotNull Long activityId, @NotEmpty String appKey, @NotEmpty String uid, @NotEmpty String targetUid) throws LuckyActivityException, LuckyActivityJoinAssistException;
    /**
facade-lucky/src/main/java/com/ks/lucky/remote/service/LuckyActivityJoinService.java
@@ -5,6 +5,9 @@
import com.ks.lucky.pojo.DO.LuckyActivityJoinRecord;
import com.ks.lucky.pojo.DTO.JoinInfo;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
/**
 * 活动参与记录服务
 */
@@ -17,11 +20,12 @@
     * @param activityId
     * @param appKey
     * @param uid
     * @param weight
     * @param joinInfo
     * @throws LuckyActivityException
     * @throws LuckyActivityJoinException
     */
    public void join(Long activityId, String appKey, String uid, JoinInfo joinInfo) throws LuckyActivityException, LuckyActivityJoinException;
    public void join(@NotNull Long activityId, @NotEmpty String appKey, @NotEmpty String uid, Integer weight, JoinInfo joinInfo) throws LuckyActivityException, LuckyActivityJoinException;
    /**
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinAssistServiceImpl.java
@@ -14,6 +14,7 @@
import com.ks.lucky.service.impl.LuckyActivityJoinManager;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.Date;
@@ -38,6 +39,7 @@
    private LuckyActivityMapper luckyActivityMapper;
    @Transactional(rollbackFor = Exception.class)
    @Validated
    @Override
    public void assist(Long activityId, String appKey, String uid, String targetUid) throws LuckyActivityException, LuckyActivityJoinAssistException {
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityJoinServiceImpl.java
@@ -11,6 +11,7 @@
import com.ks.lucky.service.impl.LuckyActivityManager;
import org.apache.dubbo.config.annotation.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import java.util.Date;
@@ -32,14 +33,20 @@
    @Transactional(rollbackFor = Exception.class)
    @Validated
    @Override
    public void join(Long activityId, String appKey, String uid, JoinInfo joinInfo) throws LuckyActivityException, LuckyActivityJoinException {
    public void join(Long activityId, String appKey, String uid, Integer weight, JoinInfo joinInfo) throws LuckyActivityException, LuckyActivityJoinException {
        luckyActivityManager.canJoin(activityId);
        Long appId = appManager.getAppId(appKey);
        LuckyActivityJoinRecord record = luckyActivityJoinManager.getRecord(activityId, appId, uid);
        if (record != null) {
            throw new LuckyActivityJoinException(1, "已经参加");
        }
        if (weight == null) {
            weight = 1;
        }
        record = new LuckyActivityJoinRecord();
        record.setActivityId(activityId);
        record.setAppId(appId);
@@ -47,10 +54,10 @@
        record.setJoinInfo(joinInfo.toString());
        record.setUid(uid);
        record.setUserType(LuckyActivityJoinRecord.USER_TYPE_REAL);
        record.setWeight(1);
        record.setWeight(weight);
        record.setCreateTime(new Date());
        luckyActivityJoinRecordMapper.insertSelective(record);
        luckyActivityManager.addJoinCount(activityId, record.getWeight());
        luckyActivityManager.addJoinCount(activityId, 1);
    }
    @Override
service-lucky/src/main/java/com/ks/lucky/service/impl/remote/LuckyActivityServiceImpl.java
@@ -129,7 +129,7 @@
            throw new LuckyActivityException(1, "活动开始时间不能小于当前时间");
        }
        if (activity.getFinishTime() != null && activity.getStartTime().getTime() >= activity.getFinishTime().getTime()) {
        if (activity.getPreFinishTime() != null && activity.getStartTime().getTime() >= activity.getPreFinishTime().getTime()) {
            throw new LuckyActivityException(1, "活动开始结束时间不能小于开始时间");
        }
service-lucky/src/main/resources/mapper/LuckyActivityMapper.xml
@@ -15,7 +15,8 @@
        <result column="state" jdbcType="INTEGER" property="state"/>
        <result column="state_remarks" jdbcType="VARCHAR" property="stateRemarks"/>
        <result column="start_time" jdbcType="TIMESTAMP" property="startTime"/>
        <result column="finish_time" jdbcType="TIMESTAMP" property="finishTime"/>
        <result column="pre_finish_time" jdbcType="TIMESTAMP" property="preFinishTime"/>
        <result column="actual_finish_time" jdbcType="TIMESTAMP" property="actualFinishTime"/>
        <result column="pre_open_time" jdbcType="TIMESTAMP" property="preOpenTime"/>
        <result column="actual_open_time" jdbcType="TIMESTAMP" property="actualOpenTime"/>
        <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
@@ -23,7 +24,7 @@
    </resultMap>
    <sql id="Base_Column_List">
    id, app_id, sponsor_id, `name`, material_poster, material_tag_image, material_, `desc`,
    max_person_count,current_person_count, state, state_remarks, start_time, finish_time, pre_open_time,actual_open_time, create_time,
    max_person_count,current_person_count, state, state_remarks, start_time, pre_finish_time,actual_finish_time, pre_open_time,actual_open_time, create_time,
    update_time
  </sql>
    <select id="selectByPrimaryKey" parameterType="java.lang.Long" resultMap="BaseResultMap">
@@ -50,13 +51,13 @@
      `name`, material_poster, material_tag_image,
      material_, `desc`, max_person_count, current_person_count,
      state, state_remarks, start_time, 
      finish_time, pre_open_time, actual_open_time,create_time,
      pre_finish_time,actual_finish_time, pre_open_time, actual_open_time,create_time,
      update_time)
    values (#{id,jdbcType=BIGINT}, #{appId,jdbcType=BIGINT}, #{sponsorId,jdbcType=BIGINT}, 
      #{name,jdbcType=VARCHAR}, #{materialPoster,jdbcType=VARCHAR}, #{materialTagImage,jdbcType=VARCHAR}, 
      #{material,jdbcType=VARCHAR}, #{desc,jdbcType=VARCHAR}, #{maxPersonCount,jdbcType=INTEGER}, #{currentPersonCount,jdbcType=INTEGER},
      #{state,jdbcType=INTEGER}, #{stateRemarks,jdbcType=VARCHAR}, #{startTime,jdbcType=TIMESTAMP}, 
      #{finishTime,jdbcType=TIMESTAMP}, #{preOpenTime,jdbcType=TIMESTAMP},  #{actualOpenTime,jdbcType=TIMESTAMP}, #{createTime,jdbcType=TIMESTAMP},
      #{preFinishTime,jdbcType=TIMESTAMP},  #{actualFinishTime,jdbcType=TIMESTAMP}, #{preOpenTime,jdbcType=TIMESTAMP},  #{actualOpenTime,jdbcType=TIMESTAMP}, #{createTime,jdbcType=TIMESTAMP},
      #{updateTime,jdbcType=TIMESTAMP})
  </insert>
    <insert id="insertSelective"  useGeneratedKeys="true" keyProperty="id" parameterType="com.ks.lucky.pojo.DO.LuckyActivity">
@@ -101,9 +102,15 @@
            <if test="startTime != null">
                start_time,
            </if>
            <if test="finishTime != null">
                finish_time,
            <if test="preFinishTime != null">
                pre_finish_time,
            </if>
            <if test="actualFinishTime != null">
                actual_finish_time,
            </if>
            <if test="preOpenTime != null">
                pre_open_time,
            </if>
@@ -162,9 +169,14 @@
            <if test="startTime != null">
                #{startTime,jdbcType=TIMESTAMP},
            </if>
            <if test="finishTime != null">
                #{finishTime,jdbcType=TIMESTAMP},
            <if test="preFinishTime != null">
                #{preFinishTime,jdbcType=TIMESTAMP},
            </if>
            <if test="actualFinishTime != null">
                #{actualFinishTime,jdbcType=TIMESTAMP},
            </if>
            <if test="preOpenTime != null">
                #{preOpenTime,jdbcType=TIMESTAMP},
            </if>
@@ -220,9 +232,14 @@
            <if test="startTime != null">
                start_time = #{startTime,jdbcType=TIMESTAMP},
            </if>
            <if test="finishTime != null">
                finish_time = #{finishTime,jdbcType=TIMESTAMP},
            <if test="preFinishTime != null">
                pre_finish_time = #{preFinishTime,jdbcType=TIMESTAMP},
            </if>
            <if test="actualFinishTime != null">
                actual_finish_time = #{actualFinishTime,jdbcType=TIMESTAMP},
            </if>
            <if test="preOpenTime != null">
                pre_open_time = #{preOpenTime,jdbcType=TIMESTAMP},
            </if>
@@ -253,7 +270,8 @@
      state = #{state,jdbcType=INTEGER},
      state_remarks = #{stateRemarks,jdbcType=VARCHAR},
      start_time = #{startTime,jdbcType=TIMESTAMP},
      finish_time = #{finishTime,jdbcType=TIMESTAMP},
      pre_finish_time = #{preFinishTime,jdbcType=TIMESTAMP},
      actual_finish_time = #{actualFinishTime,jdbcType=TIMESTAMP},
      pre_open_time = #{preOpenTime,jdbcType=TIMESTAMP},
      actual_open_time = #{actualOpenTime,jdbcType=TIMESTAMP},
      create_time = #{createTime,jdbcType=TIMESTAMP},
@@ -306,11 +324,11 @@
        <if test="query.minFinishTime!=null">
            and finish_time>=#{query.minFinishTime}
            and pre_finish_time>=#{query.minFinishTime}
        </if>
        <if test="query.maxFinishTime!=null">
            and #{query.maxFinishTime}>finish_time
            and #{query.maxFinishTime}>pre_finish_time
        </if>
    </sql>
service-lucky/src/test/java/com/ks/MyBatisTest.java
@@ -1,5 +1,6 @@
package com.ks;
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;
@@ -8,6 +9,6 @@
    @Test
    public void test(){
        ColumnParseUtil.parseColumn(LuckyActivityAwardResultExtra.class,"D:\\workspace\\DayBuy\\service-lucky\\src\\main\\resources\\mapper\\LuckyActivityAwardResultExtraMapper.xml");
        ColumnParseUtil.parseColumn(LuckyActivity.class,"D:\\workspace\\DayBuy\\service-lucky\\src\\main\\resources\\mapper\\LuckyActivityAwardResultExtraMapper.xml");
    }
}
service-lucky/src/test/java/com/ks/lucky/ActivityTest.java
@@ -51,7 +51,7 @@
        activity.setAppId(4L);
        activity.setMaxPersonCount(100);
        activity.setStartTime(new Date());
        activity.setFinishTime(new Date());
        activity.setPreFinishTime(new Date());
        activity.setMaterialPoster("http://");
        activity.setSponsorId(1L);
        activity.setName("测试活动1");
service-lucky/src/test/java/com/ks/lucky/JoinTest.java
@@ -33,7 +33,7 @@
        String uid = "123";
        JoinInfo joinInfo = JoinInfo.JoinInfoFactory.createAlipay("123123123123");
        try {
            luckyActivityJoinService.join(activityId, appKey, uid, joinInfo);
            luckyActivityJoinService.join(activityId, appKey, uid, null, joinInfo);
        } catch (LuckyActivityException e) {
            e.printStackTrace();
        } catch (LuckyActivityJoinException e) {