yangdamao 2 éve
szülő
commit
4ae78fa4c5

+ 13 - 23
zhongzheng-admin/src/main/java/com/zhongzheng/controller/activity/ActivityRecommendController.java

@@ -1,35 +1,25 @@
 package com.zhongzheng.controller.activity;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Arrays;
-
+import com.zhongzheng.common.annotation.Log;
+import com.zhongzheng.common.core.controller.BaseController;
+import com.zhongzheng.common.core.domain.AjaxResult;
+import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.enums.BusinessType;
 import com.zhongzheng.modules.activity.bo.ActivityRecommendAddBo;
 import com.zhongzheng.modules.activity.bo.ActivityRecommendEditBo;
-import com.zhongzheng.modules.activity.bo.ActivityRecommendGoodsEditBo;
 import com.zhongzheng.modules.activity.bo.ActivityRecommendQueryBo;
-import com.zhongzheng.modules.activity.service.IActivityRecommendGoodsService;
 import com.zhongzheng.modules.activity.service.IActivityRecommendService;
 import com.zhongzheng.modules.activity.vo.ActivityRecommendVo;
-import lombok.RequiredArgsConstructor;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RestController;
-import com.zhongzheng.common.annotation.Log;
-import com.zhongzheng.common.core.controller.BaseController;
-import com.zhongzheng.common.core.domain.AjaxResult;
-import com.zhongzheng.common.enums.BusinessType;
-import com.zhongzheng.common.utils.poi.ExcelUtil;
-import com.zhongzheng.common.core.page.TableDataInfo;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
 
 /**
  * 商品推荐Controller

+ 9 - 6
zhongzheng-api/src/main/java/com/zhongzheng/controller/cmmon/CommonController.java

@@ -1,7 +1,6 @@
 package com.zhongzheng.controller.cmmon;
 
 import cn.hutool.core.lang.Validator;
-import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.zhongzheng.common.core.controller.BaseController;
 import com.zhongzheng.common.core.domain.AjaxResult;
 import com.zhongzheng.common.core.page.TableDataInfo;
@@ -17,10 +16,6 @@ import com.zhongzheng.modules.course.service.ICourseTopicService;
 import com.zhongzheng.modules.course.vo.CourseTopicGoodsVo;
 import com.zhongzheng.modules.course.vo.CourseTopicVo;
 import com.zhongzheng.modules.course.vo.CourseUserVo;
-import com.zhongzheng.modules.exam.bo.ExamActivityApplyBo;
-import com.zhongzheng.modules.exam.bo.ExamActivityApplyVo;
-import com.zhongzheng.modules.exam.service.IExamActivityService;
-import com.zhongzheng.modules.exam.vo.ExamActivityVo;
 import com.zhongzheng.modules.goods.service.IGoodsSpecTemplateService;
 import com.zhongzheng.modules.goods.vo.GoodsSpecTemplateVo;
 import com.zhongzheng.modules.goods.vo.GoodsUserVo;
@@ -29,7 +24,6 @@ import com.zhongzheng.modules.order.domain.Printer;
 import com.zhongzheng.modules.system.bo.SysTenantQueryBo;
 import com.zhongzheng.modules.system.service.ISysConfigService;
 import com.zhongzheng.modules.system.service.ISysTenantService;
-import com.zhongzheng.modules.system.service.ISysWebService;
 import com.zhongzheng.modules.wx.bo.WxInfoBo;
 import com.zhongzheng.modules.wx.bo.WxInfoQuery;
 import com.zhongzheng.modules.wx.bo.WxServerBody;
@@ -269,4 +263,13 @@ public class CommonController extends BaseController {
     }
 
 
+    /**
+     * 领取题库活动校验
+     */
+    @ApiOperation("领取题库活动校验")
+    @GetMapping("/check")
+    public AjaxResult<Void> checkTime() {
+        return toAjax(iCourseService.checkTime()? 1 : 0);
+    }
+
 }

+ 9 - 2
zhongzheng-api/src/main/java/com/zhongzheng/controller/order/OrderController.java

@@ -5,7 +5,6 @@ import com.zhongzheng.common.core.controller.BaseController;
 import com.zhongzheng.common.core.domain.AjaxResult;
 import com.zhongzheng.common.core.page.TableDataInfo;
 import com.zhongzheng.common.enums.BusinessType;
-import com.zhongzheng.common.utils.SecurityUtils;
 import com.zhongzheng.common.utils.ServletUtils;
 import com.zhongzheng.framework.web.service.WxTokenService;
 import com.zhongzheng.modules.base.vo.BaseFilterVo;
@@ -16,7 +15,6 @@ import com.zhongzheng.modules.order.service.IOrderGoodsService;
 import com.zhongzheng.modules.order.service.IOrderService;
 import com.zhongzheng.modules.order.vo.OrderGoodsVo;
 import com.zhongzheng.modules.order.vo.OrderListVo;
-import com.zhongzheng.modules.order.vo.OrderVo;
 import com.zhongzheng.modules.user.entity.ClientLoginUser;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -110,6 +108,15 @@ public class OrderController extends BaseController {
         return AjaxResult.success(iOrderService.placeGzhOrder(bo));
     }
 
+    @ApiOperation("领取活动商品")
+    @PostMapping("/activity/goods")
+    public AjaxResult getActivityGoods(@RequestBody OrderAddBo bo) {
+        ClientLoginUser loginUser = wxTokenService.getLoginUser(ServletUtils.getRequest());
+        bo.setUserId(loginUser.getUser().getUserId());
+        return AjaxResult.success(iOrderService.getActivityGoods(bo));
+    }
+
+
     @ApiOperation("继续支付小程序订单")
     @PostMapping("/resumeSmallOrder")
     public AjaxResult resumeSmallOrder(@RequestBody OrderAddBo bo) {

+ 7 - 5
zhongzheng-framework/src/main/java/com/zhongzheng/framework/web/service/UserServiceImpl.java

@@ -676,7 +676,7 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
 
     @Override
     public Boolean registerUser(UserAppRegisterBo bo) {
-        if(StringUtils.isBlank(bo.getIdcard())){
+        if(StringUtils.isBlank(bo.getIdcard()) &&(ObjectUtils.isNull(bo.getIsActivity()) || bo.getIsActivity() == 0)){
             throw new CustomException("身份证不能为空");
         }
         if(bo.getTel()==null){
@@ -701,10 +701,12 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements IU
         if(Validator.isNotNull(user)){
             throw new CustomException("该手机号已注册");
         }
-        User userIdCard = getOne(new LambdaQueryWrapper<User>()
-                .eq(User::getIdCard,EncryptHandler.encrypt(bo.getIdcard())).last("limit 1"));
-        if(Validator.isNotNull(userIdCard)){
-            throw new CustomException("该身份证已注册");
+        if (ObjectUtils.isNull(bo.getIsActivity()) || bo.getIsActivity() == 0){
+            User userIdCard = getOne(new LambdaQueryWrapper<User>()
+                    .eq(User::getIdCard,EncryptHandler.encrypt(bo.getIdcard())).last("limit 1"));
+            if(Validator.isNotNull(userIdCard)){
+                throw new CustomException("该身份证已注册");
+            }
         }
         User inertData = new User();
         inertData.setTelphone(bo.getTel());

+ 4 - 2
zhongzheng-system/src/main/java/com/zhongzheng/modules/activity/domain/ActivityOrder.java

@@ -1,7 +1,5 @@
 package com.zhongzheng.modules.activity.domain;
 
-import com.baomidou.mybatisplus.annotation.FieldFill;
-import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import lombok.Data;
@@ -30,6 +28,10 @@ private static final long serialVersionUID=1L;
     private Integer type;
     /** 订单编号 */
     private String orderSn;
+    /** 用户ID */
+    private Long userId;
+    /** 商品ID */
+    private Long goodsId;
     /** 备注 */
     private Integer status;
     /** 1有效 0无效 */

+ 3 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/activity/service/impl/ActivityRecommendServiceImpl.java

@@ -3,13 +3,13 @@ package com.zhongzheng.modules.activity.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.pagehelper.Page;
 import com.zhongzheng.common.core.page.TableDataInfo;
+import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.modules.activity.bo.*;
 import com.zhongzheng.modules.activity.domain.ActivityRecommend;
@@ -24,16 +24,16 @@ import com.zhongzheng.modules.course.service.ICourseSubjectService;
 import com.zhongzheng.modules.course.vo.CourseSubjectVo;
 import com.zhongzheng.modules.goods.domain.Goods;
 import com.zhongzheng.modules.goods.domain.GoodsSpecAttributeRelation;
-import com.zhongzheng.modules.goods.domain.GoodsSpecTemplate;
 import com.zhongzheng.modules.goods.service.IGoodsService;
 import com.zhongzheng.modules.goods.service.IGoodsSpecAttributeRelationService;
 import com.zhongzheng.modules.goods.service.IGoodsSpecTemplateService;
-import com.zhongzheng.modules.goods.vo.GoodsVo;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.stream.Collectors;
 

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/ICourseService.java

@@ -87,4 +87,6 @@ public interface ICourseService extends IService<Course> {
 	List<GoodsUserVo> goodsProgressList(CourseQueryBo bo);
 
     Course getCourseByTenant(String code, Long newTenantId);
+
+	Boolean checkTime();
 }

+ 33 - 16
zhongzheng-system/src/main/java/com/zhongzheng/modules/course/service/impl/CourseServiceImpl.java

@@ -3,36 +3,39 @@ package com.zhongzheng.modules.course.service.impl;
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.lang.Validator;
 import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
-import com.zhongzheng.common.core.page.TableDataInfo;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.Page;
 import com.zhongzheng.common.exception.CustomException;
 import com.zhongzheng.common.utils.DateUtils;
 import com.zhongzheng.common.utils.ServletUtils;
-import com.zhongzheng.modules.bank.domain.ExamQuestion;
-import com.zhongzheng.modules.bank.domain.Question;
-import com.zhongzheng.modules.course.bo.*;
+import com.zhongzheng.modules.course.bo.CourseAddBo;
+import com.zhongzheng.modules.course.bo.CourseEditBo;
+import com.zhongzheng.modules.course.bo.CourseQueryBo;
 import com.zhongzheng.modules.course.domain.Course;
-import com.zhongzheng.modules.course.domain.CourseBusiness;
 import com.zhongzheng.modules.course.domain.CoursePhotoLog;
 import com.zhongzheng.modules.course.mapper.CourseMapper;
-import com.zhongzheng.modules.course.mapper.CourseSectionMapper;
 import com.zhongzheng.modules.course.service.ICoursePhotoLogService;
-import com.zhongzheng.modules.course.service.ICourseSectionBusinessService;
 import com.zhongzheng.modules.course.service.ICourseService;
 import com.zhongzheng.modules.course.vo.CourseUserVo;
 import com.zhongzheng.modules.course.vo.CourseVo;
-import com.zhongzheng.modules.exam.domain.*;
-import com.zhongzheng.modules.exam.service.*;
+import com.zhongzheng.modules.exam.domain.ExamApplyUser;
+import com.zhongzheng.modules.exam.domain.ExamBefore;
+import com.zhongzheng.modules.exam.domain.ExamBeforeApply;
+import com.zhongzheng.modules.exam.service.IExamApplyGoodsService;
+import com.zhongzheng.modules.exam.service.IExamApplyUserService;
+import com.zhongzheng.modules.exam.service.IExamBeforeApplyService;
+import com.zhongzheng.modules.exam.service.IExamBeforeService;
 import com.zhongzheng.modules.exam.vo.ExamApplyGoodsVo;
 import com.zhongzheng.modules.goods.bo.GoodsBatchDelBo;
-import com.zhongzheng.modules.goods.domain.Goods;
 import com.zhongzheng.modules.goods.domain.GoodsCourse;
 import com.zhongzheng.modules.goods.service.IGoodsCourseService;
 import com.zhongzheng.modules.goods.vo.GoodsPeriodStatusVo;
 import com.zhongzheng.modules.goods.vo.GoodsPeriodVo;
 import com.zhongzheng.modules.goods.vo.GoodsUserVo;
-import com.zhongzheng.modules.goods.vo.GoodsVo;
 import com.zhongzheng.modules.grade.bo.ClassGradeUserQueryBo;
 import com.zhongzheng.modules.grade.bo.UserPeriodQueryBo;
 import com.zhongzheng.modules.grade.bo.UserPeriodStatusAddBo;
@@ -56,16 +59,13 @@ import com.zhongzheng.modules.user.vo.SubjectStudyRecordVo;
 import com.zhongzheng.modules.user.vo.UserStudyRecordPhotoVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.github.pagehelper.Page;
 import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -580,6 +580,23 @@ public class CourseServiceImpl extends ServiceImpl<CourseMapper, Course> impleme
         return courseUserVos;
     }
 
+    @Override
+    public Boolean checkTime() {
+        try {
+            String startTime = "2023-3-16 00:00:00";
+            String endTime = "2023-4-01 00:00:00";
+            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+            Long startDate = sdf.parse(startTime).getTime()/1000;
+            Long endDate = sdf.parse(endTime).getTime()/1000;
+            if (DateUtils.getNowTime() < startDate || DateUtils.getNowTime() > endDate){
+                throw new CustomException("活动已过期");
+            }
+        } catch (ParseException e) {
+            e.printStackTrace();
+        }
+        return true;
+    }
+
     private List<UserStudyRecordPhotoVo> entity2PhotoVo(Collection<UserStudyRecordPhoto> collection) {
         List<UserStudyRecordPhotoVo> voList = collection.stream()
                 .map(any -> BeanUtil.toBean(any, UserStudyRecordPhotoVo.class))

+ 1 - 3
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/IOrderService.java

@@ -112,7 +112,5 @@ public interface IOrderService extends IService<Order> {
 
 	boolean arrangeGrade(String goodsName, Long goodsId, Long orderGoodsId, Long gradeId, Long userId, String orderSn, Long businessId);
 
-
-
-
+	Map<String, String> getActivityGoods(OrderAddBo bo);
 }

+ 127 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderServiceImpl.java

@@ -1820,6 +1820,133 @@ public class OrderServiceImpl extends ServiceImpl<OrderMapper, Order> implements
         return true;
     }
 
+    @Override
+    public Map<String, String> getActivityGoods(OrderAddBo bo) {
+        String key = "ORDER-" + "-" + bo.getUserId();
+        Long value = redisCache.getCacheObject(key);
+        if (Validator.isNotEmpty(value)) {
+            throw new CustomException("请勿频繁提交订单");
+        }
+        redisCache.setCacheObject(key, 1L, 5, TimeUnit.SECONDS);//5秒
+        List<OrderGoodsAddBo> goodsList = bo.getGoodsList();
+        if (goodsList == null || goodsList.size() < 1) {
+            throw new CustomException("商品列表为空");
+        }
+        Order add = BeanUtil.toBean(bo, Order.class);
+        validEntityBeforeSave(add);
+        add.setCreateTime(DateUtils.getNowTime());
+        add.setUpdateTime(DateUtils.getNowTime());
+
+
+        //生成订单号
+        String out_trade_no = DateUtils.getDateOrderSn();
+        BigDecimal totalPrice = new BigDecimal(0);
+        BigDecimal payPrice = new BigDecimal(0);
+        List<OrderGoods> freeList = new ArrayList<>();
+        //生成订单
+        for (OrderGoodsAddBo g : goodsList) {
+            //订单商品
+            Goods goods = iGoodsService.getOne(new LambdaQueryWrapper<Goods>().eq(Goods::getGoodsId, g.getGoodsId()));
+            if (goods.getGoodsStatus() != 1) {
+                throw new CustomException(goods.getGoodsName() + "商品已下架,请重新选择商品下单");
+            }
+            OrderGoods orderGoods = BeanUtil.toBean(g, OrderGoods.class);
+            orderGoods.setOrderSn(out_trade_no);
+            if (g.getGoodsInputData() != null) {
+                orderGoods.setGoodsInputData(JSON.toJSONString(g.getGoodsInputData()));
+            }
+            //成交价
+            orderGoods.setStatus(1);
+            orderGoods.setGoodsRealPrice(goods.getStandPrice());
+            orderGoods.setGoodsPrice(goods.getStandPrice());
+            orderGoods.setCreateTime(DateUtils.getNowTime());
+            orderGoods.setUpdateTime(DateUtils.getNowTime());
+            //订单价格不计算优惠
+            totalPrice = totalPrice.add(goods.getStandPrice());
+            //暂不计算优惠券
+            payPrice = payPrice.add(goods.getStandPrice());
+            iOrderGoodsService.save(orderGoods);
+
+            boolean canRepeatBuy = false;
+            validUserBeforeBuy(goods, bo.getUserId());
+            //判断是否有购买过
+            Long oldOrderGoodsId = getHaveBuyGoods(g.getGoodsId(), bo.getUserId());
+            //视频商品安排班级
+            if (goods.getGoodsType() == 1) {
+                if (Validator.isNotEmpty(goods.getStudyCount())) {
+                    orderGoods.setStudyCount(goods.getStudyCount() - 1); //默认分班消耗一次学习机会
+                } else {
+                    orderGoods.setStudyCount(0L);//没配置则为0
+                }
+                Long gradeId = null;
+                //判断是否购买历史班级都过期
+                canRepeatBuy = this.canBuyRepeatGoods(g.getGoodsId(), bo.getUserId());
+                if (g.getGoodsInputData() != null) {
+                    gradeId = g.getGoodsInputData().getGradeId();
+                    if (Validator.isNotEmpty(oldOrderGoodsId)) {
+                        //有指定选班模板且视频商品班级已过期,记录复购状态
+                        orderGoods.setRebuyOrderGoodsId(oldOrderGoodsId);
+                    }
+                }
+                String requestId = IdUtil.simpleUUID();
+                RedisLockEntity redisLockEntity = new RedisLockEntity();
+                redisLockEntity.setLockKey(RedisLockEntity.KEY_LOCK_GRADE);
+                redisLockEntity.setRequestId(requestId);
+                if (redisCache.lock(redisLockEntity)) {
+                    arrangeGrade(goods.getGoodsName(), goods.getGoodsId(), orderGoods.getOrderGoodsId(), gradeId, add.getUserId(), out_trade_no, goods.getBusinessId());
+                    redisCache.unlockLua(redisLockEntity);
+                }
+                iOrderGoodsService.updateById(orderGoods);
+                newFreeBankGoods(goods.getGoodsId(), orderGoods.getOrderGoodsId());
+            }
+
+            if (!canRepeatBuy && goods.getGoodsType() != 3 && goods.getGoodsType() != 4) {
+                this.checkBuyGoods(g.getGoodsId(), bo.getUserId(), goods.getGoodsType());
+            }
+            if (goods.getGoodsType() == 6) {
+                //直播商品
+                if (Validator.isNotEmpty(oldOrderGoodsId) && oldOrderGoodsId.longValue() > 0) {
+                    throw new CustomException("直播商品不允许复购");
+                }
+            }
+            iShoppingCartService.deleteByGoodsId(g.getGoodsId(), bo.getUserId());
+            //商品0元加入免费商品列表
+            freeList.add(orderGoods);
+        }
+
+        add.setOrderSn(out_trade_no);
+        add.setOrderFrom(Order.FROM_SMALL);
+        add.setPayPrice(payPrice);
+        add.setPayType(Order.PAY_WECHAT);
+        add.setOrderPrice(totalPrice);
+        //订单0元
+        //完全收费
+        add.setOrderStatus(Order.ORDER_STATUS_PAY);
+        add.setPayStatus(Order.PAY_FREE);
+        add.setStatus(1);
+        this.save(add);
+        //处理免费商品
+        for (OrderGoods orderGoods : freeList) {
+            dealFreeGoods(orderGoods, add);
+        }
+
+        Map<String, String> payResult = new HashMap<>();
+        payResult.put("orderSn", out_trade_no);
+
+        //活动商品领取记录
+        ActivityOrder record = new ActivityOrder();
+        record.setOrderSn(out_trade_no);
+        record.setUserId(add.getUserId());
+        record.setGoodsId(goodsList.get(0).getGoodsId());
+        record.setStatus(1);
+        record.setRemark("真题领取活动");
+        record.setType(2);
+        record.setCreateTime(DateUtils.getNowTime());
+        record.setUpdateTime(DateUtils.getNowTime());
+        iActivityOrderService.save(record);
+        return payResult;
+    }
+
     private String createGradeCode(Long goodsId, CourseBusinessVo business) {
 
         Goods goods = iGoodsService.getById(goodsId);

+ 2 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/user/bo/UserAppRegisterBo.java

@@ -1,6 +1,5 @@
 package com.zhongzheng.modules.user.bo;
 
-import com.zhongzheng.common.annotation.Excel;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -27,5 +26,7 @@ public class UserAppRegisterBo {
     private String shareActivityCode;
     @ApiModelProperty("身份证")
     private String idcard;
+    @ApiModelProperty("是否活动:1是,0否")
+    private Integer isActivity;
 
 }