瀏覽代碼

Merge branch 'master' of http://111.47.29.214:3000/udream-cxs/lift-server.git

Wei Ruifeng 4 年之前
父節點
當前提交
7502407265

+ 2 - 2
lift-ud-service/src/main/java/cn/com/ty/lift/ud/common/BaseEntity.java

@@ -42,7 +42,7 @@ public abstract class BaseEntity implements Serializable {
      * 修改时间 默认为系统当前时间
      */
     @ApiModelProperty(value = "修改时间")
-    @TableField(value = "update_time", fill = FieldFill.INSERT_UPDATE)
+    @TableField(value = "update_time", fill = FieldFill.UPDATE)
     @JsonSerialize(using = LocalDateTimeConverter.class)
     private LocalDateTime updateTime;
 
@@ -50,6 +50,6 @@ public abstract class BaseEntity implements Serializable {
      * 修改者id
      */
     @ApiModelProperty(value = "修改人")
-    @TableField(value = "update_by", fill = FieldFill.INSERT_UPDATE)
+    @TableField(value = "update_by", fill = FieldFill.UPDATE)
     private String updateBy;
 }

+ 4 - 1
lift-ud-service/src/main/java/cn/com/ty/lift/ud/userCoupon/mapper/UserCouponMapper.xml

@@ -24,7 +24,10 @@
             u.avatar_url userHeadPic,
             c.name couponName,
             c.type couponType,
-            uc.used_flag usedFlag
+            uc.used_flag usedFlag,
+            uc.create_time createTime,
+            uc.create_by createBy,
+            uc.update_time updateTime
         from user_coupon uc
         left join coupon c on uc.coupon_id = c.id
         left join user_info u on uc.user_id = u.user_id

+ 38 - 15
lift-ud-service/src/main/java/cn/com/ty/lift/ud/userInfo/service/impl/UserInfoServiceImpl.java

@@ -9,6 +9,8 @@ import cn.com.ty.lift.ud.appmenu.mapper.entity.Appmenu;
 import cn.com.ty.lift.ud.appmenu.service.IAppuserMenuService;
 import cn.com.ty.lift.ud.common.RandomizingID;
 import cn.com.ty.lift.ud.company.service.ICompanyService;
+import cn.com.ty.lift.ud.coupon.mapper.entity.Coupon;
+import cn.com.ty.lift.ud.coupon.service.ICouponService;
 import cn.com.ty.lift.ud.dataBank.mapper.entity.LiftBrandEntity;
 import cn.com.ty.lift.ud.dataBank.mapper.entity.LiftCertificateEntity;
 import cn.com.ty.lift.ud.dataBank.service.ILiftBrandService;
@@ -41,10 +43,7 @@ import cn.com.ty.lift.ud.userInfo.mapper.entity.*;
 import cn.com.ty.lift.ud.userInfo.service.IUserInfoService;
 import cn.com.ty.lift.ud.userRebate.mapper.entity.UserRebateEntity;
 import cn.com.ty.lift.ud.userRebate.service.IUserRebateService;
-import cn.com.ty.lift.ud.utils.BaiduDistance;
-import cn.com.ty.lift.ud.utils.PasswordUtils;
-import cn.com.ty.lift.ud.utils.PingYinUtil;
-import cn.com.ty.lift.ud.utils.QrCodeUtil;
+import cn.com.ty.lift.ud.utils.*;
 import cn.com.xwy.boot.web.dto.RestResponse;
 import cn.com.xwy.util.collection.ListUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -104,6 +103,9 @@ public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfoEnt
     @Autowired
     private IUserCouponService iUserCouponService;
 
+    @Autowired
+    private ICouponService couponService;
+
     @Autowired
     private ILiftBrandService iLiftBrandService;
 
@@ -116,12 +118,21 @@ public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfoEnt
     @Autowired
     private JmsMessagingTemplate jmsMessagingTemplate;
 
-    private @Autowired
-    IAppuserMenuService appUserMenuService;
+    @Autowired
+    private IAppuserMenuService appUserMenuService;
     
     @Autowired
     private ApplyExpertMapper applyExpertMapper;
 
+    @Autowired
+    private IVipFeeSettingService vipFeeSettingService;
+
+    @Autowired
+    private IUserRebateService iUserRebateService;
+
+    @Autowired
+    private IUserBillService iUserBillService;
+
     @Override
     public UserInfoEntity getByUserId(Long id) {
         UserInfoEntity userInfo = userInfoMapper.getUserInfo(id);
@@ -175,15 +186,6 @@ public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfoEnt
         return userInfo;
     }
 
-    @Autowired
-    private IVipFeeSettingService vipFeeSettingService;
-
-    @Autowired
-    private IUserRebateService iUserRebateService;
-
-    @Autowired
-    private IUserBillService iUserBillService;
-
     /**
      * 获取个人信息
      *
@@ -665,11 +667,32 @@ public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfoEnt
 
     @Override
     public RestResponse batchSendRedEnvelope(List<String> userList, Long redEncelopId) {
+        Optional<Coupon> couponOptional = Optional.ofNullable(
+                couponService.getOne(new QueryWrapper<Coupon>()
+                        .eq("type", 2)
+                        .eq("id", redEncelopId)));
+        if (!couponOptional.isPresent()){
+            return RestResponse.fail( "当前红包不存在,请重新选择");
+        } else {
+            Coupon coupon = couponOptional.get();
+
+            int issuedRedPacket = iUserCouponService.count(new QueryWrapper<UserCoupon>()
+                    .eq("type", 2)
+                    .eq("coupon_id", redEncelopId));
+            int redPacketNum = issuedRedPacket + userList.size();
+            if (redPacketNum > coupon.getNum()){
+                String returnStr = String.format("红包总个数{%d},已发红包{%d},可发红包{%d}",
+                        coupon.getNum(), issuedRedPacket, coupon.getNum() - issuedRedPacket);
+                return RestResponse.fail( returnStr);
+            }
+        }
+
         for (String id : userList) {
             UserCoupon uc = new UserCoupon();
             uc.setUserId(Long.parseLong(id));
             uc.setCouponId(redEncelopId);
             uc.setUsedFlag(1);
+            uc.setCreateBy(CurrentUserInfo.userInfo().getName());
             iUserCouponService.save(uc);
         }
         return RestResponse.success(null, "发放成功");

+ 29 - 2
lift-ud-service/src/main/java/cn/com/ty/lift/ud/utils/CurrentUserInfo.java

@@ -1,6 +1,10 @@
 package cn.com.ty.lift.ud.utils;
 
 import cn.com.ty.lift.ud.redis.RedisUtils;
+import cn.com.ty.lift.ud.userInfo.mapper.entity.UserInfoEntity;
+import cn.com.ty.lift.ud.userInfo.service.IUserInfoService;
+import cn.com.ty.lift.ud.userInfo.service.impl.UserInfoServiceImpl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import org.springframework.web.context.request.RequestContextHolder;
 import org.springframework.web.context.request.ServletRequestAttributes;
 
@@ -12,6 +16,7 @@ import java.util.Optional;
 public class CurrentUserInfo {
 
     private static RedisUtils redisUtil = ApplicationContextUtil.getBean(RedisUtils.class);
+    private static IUserInfoService userInfoService = ApplicationContextUtil.getBean(UserInfoServiceImpl.class);
 
     /**
      * 获取当前登录人手机号
@@ -24,10 +29,32 @@ public class CurrentUserInfo {
         if(requestToken == null) {
             return null;
         }
-        Optional<String> value = Optional.ofNullable(redisUtil.get(requestToken));
-        if (value.isPresent()){
+        Optional<String> tokenValue = Optional.ofNullable(redisUtil.get(requestToken));
+        if (tokenValue.isPresent()){
             return redisUtil.get(requestToken).substring(1,12);
         }
         return null;
     }
+
+    /**
+     * 获取当前登录人手机号
+     * @return
+     */
+    public static UserInfoEntity userInfo(){
+        ServletRequestAttributes requestAttributes = (ServletRequestAttributes)RequestContextHolder.getRequestAttributes();
+        HttpServletRequest request = requestAttributes.getRequest();
+        String requestToken = request.getHeader("Authorization");
+        if(requestToken == null) {
+            return new UserInfoEntity();
+        }
+        Optional<String> tokenValue = Optional.ofNullable(redisUtil.get(requestToken));
+        if (tokenValue.isPresent()){
+            String mobile = redisUtil.get(requestToken).substring(1, 12);
+            UserInfoEntity userInfoEntity = Optional.ofNullable(userInfoService.getOne(new QueryWrapper<UserInfoEntity>().eq("mobile", mobile)))
+                    .orElse(new UserInfoEntity());
+
+            return userInfoEntity;
+        }
+        return new UserInfoEntity();
+    }
 }