提交 d04cdac3 authored 作者: zgy's avatar zgy

添加接口:根据用户ID查询优惠券

上级 6ccfb3a2
......@@ -52,10 +52,12 @@ public class TbCfCouponController {
public Result<TbCfCouponEntity> queryCouponDetail(@ApiParam("优惠券Id")@PathVariable("couponId")String couponId) {
return tbCfCouponService.queryCouponDetail(couponId);
}
@ApiOperation("用户Id")
@ApiOperation("根据用户Id查询优惠券")
@GetMapping("/queryCouponByUserId/{userId}")
public Result<CouponItem> queryCouponByUserId(@ApiParam("用户Id")@PathVariable("userId") String userId) {
return tbCfIssueCouponService.queryCouponByUserId(userId);
}
}
......@@ -51,4 +51,9 @@ public interface TbCfCouponDao extends BaseDao<TbCfCouponEntity> {
*/
List<TbCfCouponEntity> getCouponByCategory(Integer couponCategory,Date nowTime);
/**
*如果vaild 是1的话就是注册就送该优惠券,可以是送一张也可以送多张
*/
List<TbCfCouponEntity> getCouponAndVaildAll();
}
......@@ -124,6 +124,24 @@ public class TbCfCouponEntity implements Serializable {
@ApiModelProperty("修改时间")
private Date updateTime;
/**
* 设置是否是注册就是的优惠券,(0)默认状态,(1)是用户注册就送这张优惠券
*/
private Integer couponVaild;
/**
* 设置:设置是否是注册就是的优惠券,(0)默认状态,(1)是用户注册就送这张优惠券
*/
public void setCouponVaild(Integer couponVaild) {
this.couponVaild = couponVaild;
}
/**
* 获取:设置是否是注册就是的优惠券,(0)默认状态,(1)是用户注册就送这张优惠券
*/
public Integer getCouponVaild() {
return couponVaild;
}
/**
* 设置:优惠券id
*/
......
......@@ -4,11 +4,11 @@ import java.io.Serializable;
import java.util.Date;
/**
* 优惠券发放保存表实体
* 实体
* 表名 tb_cf_issue_coupon
*
* @author lipengjun
* @date 2019-10-24 17:30:10
* @date 2019-10-28 11:19:15
*/
public class TbCfIssueCouponEntity implements Serializable {
private static final long serialVersionUID = 1L;
......@@ -17,18 +17,10 @@ public class TbCfIssueCouponEntity implements Serializable {
* 发放表id
*/
private String couponIssuetableId;
/**
* 优惠券类型
*/
private String couponCategoryName;
/**
* 优惠券id
*/
private String couponId;
/**
* 优惠券名称
*/
private String couponTitle;
/**
* 用户id
*/
......@@ -40,9 +32,9 @@ public class TbCfIssueCouponEntity implements Serializable {
/**
* 创建日期
*/
private Date createTime;
private String createTime;
/**
* 是否已经使用(0未使用,1已使用)
* 是否已经使用,0已使用,1未使用,2已过期
*/
private Integer enableFlag;
/**
......@@ -52,34 +44,17 @@ public class TbCfIssueCouponEntity implements Serializable {
/**
* 设置:发放表id
* @return
*/
public String setCouponIssueTableId(String couponIssuetableId) {
public void setCouponIssuetableId(String couponIssuetableId) {
this.couponIssuetableId = couponIssuetableId;
return couponIssuetableId;
}
/**
* 获取:发放表id
* @return
*/
public String getCouponIssuetableId() {
return couponIssuetableId;
}
/**
* 获取:优惠券类型名称
*/
public String getCouponCategoryName() {
return couponCategoryName;
}
/**
* 设置:优惠券类型名称
*/
public void setCouponCategoryName(String couponCategoryName) {
this.couponCategoryName = couponCategoryName;
}
/**
* 设置:优惠券id
*/
......@@ -93,18 +68,6 @@ public class TbCfIssueCouponEntity implements Serializable {
public String getCouponId() {
return couponId;
}
/**
* 获取:优惠券名称
*/
public String getCouponTitle() {
return couponTitle;
}
/**
* 设置:优惠券名称
*/
public void setCouponTitle(String couponTitle) {
this.couponTitle = couponTitle;
}
/**
* 设置:用户id
*/
......@@ -134,25 +97,25 @@ public class TbCfIssueCouponEntity implements Serializable {
/**
* 设置:创建日期
*/
public void setCreateTime(Date createTime) {
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
/**
* 获取:创建日期
*/
public Date getCreateTime() {
public String getCreateTime() {
return createTime;
}
/**
* 设置:是否已经使用(0未使用,1已使用)
* 设置:是否已经使用,0已使用,1未使用,2已过期
*/
public void setEnableFlag(Integer enableFlag) {
this.enableFlag = enableFlag;
}
/**
* 获取:是否已经使用(0未使用,1已使用)
* 获取:是否已经使用,0已使用,1未使用,2已过期
*/
public Integer getEnableFlag() {
return enableFlag;
......
......@@ -97,5 +97,8 @@ public interface TbCfCouponService {
*/
Result<TbCfCouponEntity> queryCouponDetail(String couponId);
/**
*如果vaild 是1的话就是注册就送该优惠券,可以是送一张也可以送多张
*/
List<TbCfCouponEntity> getCouponAndVaildAll();
}
......@@ -50,7 +50,7 @@ public interface TbCfIssueCouponService {
* @param userId
* @return 保存条数
*/
int save(TbCfCouponIssueEntity tbCfCouponIssue, TbCfIssueCouponEntity tbCfIssueCoupon, String userId, String nick);
int save(TbCfIssueCouponEntity issueCouponEntity);
/**
* 根据主键更新实体
*
......
......@@ -152,6 +152,11 @@ public class TbCfCouponServiceImpl implements TbCfCouponService {
return new Result<>(tbCfCouponEntity);
}
@Override
public List<TbCfCouponEntity> getCouponAndVaildAll() {
return tbCfCouponDao.getCouponAndVaildAll();
}
/**
* 抢优惠券
* 若能抢到,则返回优惠券,否则返回空
......
......@@ -60,15 +60,8 @@ public class TbCfIssueCouponServiceImpl implements TbCfIssueCouponService {
@Override
public int save(TbCfCouponIssueEntity tbCfCouponIssue, TbCfIssueCouponEntity tbCfIssueCoupon, String userId, String nick) {
tbCfIssueCoupon.setCouponIssueTableId(IdUtil.createIdbyUUID());
tbCfIssueCoupon.setCouponId(tbCfCouponIssue.getCouponId());
tbCfIssueCoupon.setUserId(userId);
tbCfIssueCoupon.setNick(nick);
tbCfIssueCoupon.setEnableFlag(1);
tbCfIssueCoupon.setCreateTime(new Date());
tbCfIssueCoupon.setIssueId(tbCfCouponIssue.getCouponIssueId());
return tbCfIssueCouponDao.save(tbCfIssueCoupon);
public int save(TbCfIssueCouponEntity issueCouponEntity) {
return tbCfIssueCouponDao.save(issueCouponEntity);
}
public Result<CouponItem> queryCouponByUserId(String userId){
......
......@@ -5,9 +5,10 @@ import com.diaoyun.zion.chinafrica.constant.KeyConstant;
import com.diaoyun.zion.chinafrica.dao.TbCfCouponDao;
import com.diaoyun.zion.chinafrica.dao.TbCfUserInfoDao;
import com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfIssueCouponEntity;
import com.diaoyun.zion.chinafrica.entity.TbCfUserInfoEntity;
import com.diaoyun.zion.chinafrica.enums.CouponCategoryEnum;
import com.diaoyun.zion.chinafrica.service.TbCfCouponService;
import com.diaoyun.zion.chinafrica.service.TbCfIssueCouponService;
import com.diaoyun.zion.chinafrica.service.TbCfUserInfoService;
import com.diaoyun.zion.chinafrica.vo.TbCfUserInfoVo;
import com.diaoyun.zion.master.base.Result;
......@@ -37,6 +38,7 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
......@@ -62,6 +64,10 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
@Autowired
private JwtTokenProvider jwtTokenProvider;
@Autowired
private TbCfIssueCouponService tbCfIssueCouponService;
@Autowired
private AuthenticationManager authenticationManager;
......@@ -83,6 +89,8 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
@Autowired
private RedisCache<Object> captchaRedisCache;
@Override
public TbCfUserInfoEntity queryObject(String userId) {
return tbCfUserInfoDao.queryObject(userId);
......@@ -149,14 +157,36 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
//目前有验证码的都是邮箱类型
tbCfUserInfoVo.setUserType(UserTypeEnum.EMAIL.getCode());
tbCfUserInfoVo.setEmailFlag(StateConstant.VALID);
//生成UUID用一个string 类型来保存着,后面会用到
String userid = IdUtil.createIdbyUUID();
tbCfUserInfoVo.setUserId(userid);
//用户姓名
String avatar = domainProperties.getProperty("user.avatar");
tbCfUserInfoVo.setAvatar(avatar);
fillUserNecessayInfo(tbCfUserInfoVo);
//加密密码
String password = passwordEncoder.encode(tbCfUserInfoVo.getPassword());
tbCfUserInfoVo.setPassword(password);
BeanUtils.copyProperties(tbCfUserInfoVo, tbCfUserInfoEntity);
tbCfUserInfoDao.save(tbCfUserInfoEntity);
//赠送用户优惠券
//赠送用户优惠券 tbCfIssueCouponService
List<TbCfCouponEntity> couponVailList = tbCfCouponService.getCouponAndVaildAll();
//获取当前时间的时分秒
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
String date = df.format(new Date());
for (int i = 0; i < couponVailList.size(); i++) {
TbCfIssueCouponEntity issue = new TbCfIssueCouponEntity();
String coupon_id = couponVailList.get(i).getCouponId();
String issuseCoupon_id = IdUtil.createIdbyUUID();
//把上面获取到的值,赋值到实体类中
issue.setCouponId(coupon_id);
issue.setCouponIssuetableId(issuseCoupon_id);
issue.setCreateTime(date);
issue.setUserId(userid);
issue.setNick(avatar);
issue.setEnableFlag(0);
tbCfIssueCouponService.save(issue);
}
//注册成功 创建token
String token = jwtTokenProvider.createToken(tbCfUserInfoVo.getAccount());
tbCfUserInfoVo.setToken(token);
......@@ -444,9 +474,7 @@ public class TbCfUserInfoServiceImpl implements TbCfUserInfoService {
}
}*/
private void fillUserNecessayInfo(TbCfUserInfoVo tbCfUserInfoVo) {
tbCfUserInfoVo.setUserId(IdUtil.createIdbyUUID());
tbCfUserInfoVo.setUserNo(IdUtil.createIdByDate());
tbCfUserInfoVo.setAvatar(domainProperties.getProperty("user.avatar"));
tbCfUserInfoVo.setPhoneFlag(StateConstant.INVALID);
tbCfUserInfoVo.setLoginCount(0);
tbCfUserInfoVo.setCreateTime(new Date());
......
......@@ -4,26 +4,27 @@
<mapper namespace="com.diaoyun.zion.chinafrica.dao.TbCfCouponDao">
<resultMap type="com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity" id="tbCfCouponMap">
<result property="couponId" column="coupon_id"/>
<result property="couponCategoryId" column="coupon_category_id"/>
<result property="couponUse" column="coupon_use"/>
<result property="couponTitle" column="coupon_title"/>
<result property="couponIcon" column="coupon_icon"/>
<result property="withStationId" column="with_station_id"/>
<result property="withAmount" column="with_amount"/>
<result property="deductAmount" column="deduct_amount"/>
<result property="quato" column="quato"/>
<result property="takeCount" column="take_count"/>
<result property="usedCount" column="used_count"/>
<result property="startTime" column="start_time"/>
<result property="endTime" column="end_time"/>
<result property="validStartTime" column="valid_start_time"/>
<result property="validEndTime" column="valid_end_time"/>
<result property="status" column="status"/>
<result property="createUserId" column="create_user_id"/>
<result property="createTime" column="create_time"/>
<result property="updateUserId" column="update_user_id"/>
<result property="updateTime" column="update_time"/>
<result property="couponId" column="coupon_id"/>
<result property="couponCategoryId" column="coupon_category_id"/>
<result property="couponUse" column="coupon_use"/>
<result property="couponTitle" column="coupon_title"/>
<result property="couponIcon" column="coupon_icon"/>
<result property="withStationId" column="with_station_id"/>
<result property="withAmount" column="with_amount"/>
<result property="deductAmount" column="deduct_amount"/>
<result property="quato" column="quato"/>
<result property="takeCount" column="take_count"/>
<result property="usedCount" column="used_count"/>
<result property="startTime" column="start_time"/>
<result property="endTime" column="end_time"/>
<result property="validStartTime" column="valid_start_time"/>
<result property="validEndTime" column="valid_end_time"/>
<result property="status" column="status"/>
<result property="createUserId" column="create_user_id"/>
<result property="createTime" column="create_time"/>
<result property="updateUserId" column="update_user_id"/>
<result property="updateTime" column="update_time"/>
<result property="couponVaild" column="coupon_vaild"/>
</resultMap>
<select id="queryObject" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity">
......@@ -185,6 +186,7 @@
#{couponId}
</foreach>
</delete>
<!--查询用户所有有效的优惠券-->
<select id="queryUserAvailableCoupon" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity">
select DISTINCT
......@@ -276,6 +278,31 @@
or (t1.user_id=#{userId} and t1.coupon_id=t2.coupon_id and <![CDATA[ t2.valid_end_time<#{nowTime}]]> and t1.enable_flag=1))
</select>
<select id="getCouponAndVaildAll" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity">
select
`coupon_id`,
`coupon_category_id`,
`coupon_use`,
`coupon_title`,
`coupon_icon`,
`with_station_id`,
`with_amount`,
`deduct_amount`,
`quato`,
`take_count`,
`used_count`,
`start_time`,
`end_time`,
`valid_start_time`,
`valid_end_time`,
`status`,
`create_user_id`,
`create_time`,
`update_user_id`,
`update_time`,
`coupon_vaild`
from tb_cf_coupon
</select>
<!--根据优惠券种类获取发放中的优惠券-->
<select id="getCouponByCategory" resultType="com.diaoyun.zion.chinafrica.entity.TbCfCouponEntity">
select * from tb_cf_coupon where coupon_category_id=#{couponCategoryId} and
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论