From 20fb7c22fd9d4a936a2e9f4b003da51a0c2a0217 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 25 四月 2025 18:11:19 +0800 Subject: [PATCH] 修改bug --- ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/SysRedPacketRecordController.java | 126 ++++++++++++++++++++--------------------- 1 files changed, 61 insertions(+), 65 deletions(-) diff --git a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/SysRedPacketRecordController.java b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/SysRedPacketRecordController.java index eeec482..46ca401 100644 --- a/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/SysRedPacketRecordController.java +++ b/ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/SysRedPacketRecordController.java @@ -1,36 +1,34 @@ package com.stylefeng.guns.modular.system.controller.general; -import cn.hutool.system.UserInfo; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.plugins.Page; import com.stylefeng.guns.core.base.controller.BaseController; import com.stylefeng.guns.core.common.constant.factory.PageFactory; +import com.stylefeng.guns.core.log.LogObjectHolder; import com.stylefeng.guns.core.shiro.ShiroKit; -import com.stylefeng.guns.core.shiro.ShiroUser; import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.core.util.SinataUtil; -import com.stylefeng.guns.modular.system.model.TSystemNotice; +import com.stylefeng.guns.modular.system.model.SysRedPacketRecord; import com.stylefeng.guns.modular.system.model.TUser; +import com.stylefeng.guns.modular.system.model.User; import com.stylefeng.guns.modular.system.model.UserRedPacketRecord; -import com.stylefeng.guns.modular.system.service.ITSystemNoticeService; -import com.stylefeng.guns.modular.system.service.ITUserService; -import com.stylefeng.guns.modular.system.service.IUserRedPacketRecordService; -import com.stylefeng.guns.modular.system.service.impl.UserServiceImpl; +import com.stylefeng.guns.modular.system.service.*; import com.stylefeng.guns.modular.system.util.ResultUtil; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.ResponseBody; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.beans.factory.annotation.Autowired; -import com.stylefeng.guns.core.log.LogObjectHolder; +import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; -import com.stylefeng.guns.modular.system.model.SysRedPacketRecord; -import com.stylefeng.guns.modular.system.service.ISysRedPacketRecordService; +import org.springframework.web.bind.annotation.ResponseBody; import java.math.BigDecimal; -import java.util.*; +import java.math.RoundingMode; +import java.util.Date; +import java.util.List; +import java.util.Map; +import java.util.Random; /** * 控制器 @@ -42,13 +40,19 @@ @RequestMapping("/sysRedPacketRecord") public class SysRedPacketRecordController extends BaseController { - private String PREFIX = "/system/sysRedPacketRecord/"; + private final String PREFIX = "/system/sysRedPacketRecord/"; @Autowired private ISysRedPacketRecordService sysRedPacketRecordService; @Autowired private IUserRedPacketRecordService userRedPacketRecordService; - + @Autowired + private ITSystemNoticeService systemNoticeService; + @Autowired + private ITUserService userService; + + @Autowired + private IUserService iUserService; @RequestMapping("/redRecord") public String index( Model model,Integer couponActivityId,Integer activityType) { @@ -56,7 +60,6 @@ model.addAttribute("couponActivityId",couponActivityId); return PREFIX + "userRedRecord.html"; } - /** * 跳转到首页 @@ -89,14 +92,6 @@ LogObjectHolder.me().set(sysRedPacketRecord); return PREFIX + "sysRedPacketRecord_edit.html"; } - - - @Autowired - private ITSystemNoticeService systemNoticeService; - - @Autowired - private ITUserService userService; - @RequestMapping(value = "/direct") @ResponseBody @@ -138,50 +133,51 @@ // } } - String[] split = ids.split(","); + User user = iUserService.selectById(ShiroKit.getUser().getId()); + String[] split = ids.split(","); for (String s : split) { - if(money > 0||sysRedPacketRecord.getType()!=1){ - if (sysRedPacketRecord.getType()!=1){ - Double startMoney = Double.valueOf(String.valueOf(sysRedPacketRecord.getStartMoney())); - Double endMoney = Double.valueOf(String.valueOf(sysRedPacketRecord.getEndMoney())); - int i = new BigDecimal(endMoney).subtract(new BigDecimal(startMoney)).intValue(); - Random random = new Random(); - int num; - if (!startMoney.equals(endMoney)){ - num = random.nextInt(i); - - }else { - num = 0; + if(money > 0||sysRedPacketRecord.getType()!=1){ + if (sysRedPacketRecord.getType()!=1){ + Double startMoney = Double.valueOf(String.valueOf(sysRedPacketRecord.getStartMoney())); + Double endMoney = Double.valueOf(String.valueOf(sysRedPacketRecord.getEndMoney())); + int i = new BigDecimal(endMoney).subtract(new BigDecimal(startMoney)).intValue(); + Random random = new Random(); + int num; + if (!startMoney.equals(endMoney)){ + num = random.nextInt(i); + + }else { + num = 0; + } + money = new BigDecimal(startMoney).add(new BigDecimal(num)).setScale(2, RoundingMode.HALF_EVEN).doubleValue(); + v=v-money; + if (v<0){ + return ResultUtil.success("当前红包为随机红包,可能有部分用户无法领取",null,"当前红包为随机红包,可能有部分用户无法领取"); + } } - money = new BigDecimal(startMoney).add(new BigDecimal(num)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue(); - v=v-money; - if (v<0){ - return ResultUtil.success("当前红包为随机红包,可能有部分用户无法领取",null,"当前红包为随机红包,可能有部分用户无法领取"); + //添加临时红包数据 + UserRedPacketRecord userRedPacketRecord = new UserRedPacketRecord(); + userRedPacketRecord.setMoney(money); + userRedPacketRecord.setRemainingAmount(money); + userRedPacketRecord.setInsertTime(new Date()); + userRedPacketRecord.setCompanyId(user.getObjectId()); + userRedPacketRecord.setState(1); + userRedPacketRecord.setOrderId(null); + // 标记为后台发放的红包 + userRedPacketRecord.setIsGrant(1); + userRedPacketRecord.setRedPacketActivityId(redId); + // userRedPacketRecord.setOrderType(3); + userRedPacketRecord.setUserId(Integer.valueOf(s)); + userRedPacketRecordService.insert(userRedPacketRecord); + + TUser tUser = userService.selectById(Integer.valueOf(s)); + Integer language = tUser.getLanguage(); + try { + systemNoticeService.addSystemNotice(1, language == 1 ? "您收到一个额度为GHS"+money+"的红包,请查收。" : language == 2 ? "You have received a red envelope with a limit of GHS"+money+". Please check it." : "Vous recevez un paquet rouge avec une limite de ghs+"+money+", veuillez vérifier.", tUser.getId()); + }catch (Exception e){ + e.printStackTrace(); } } - //添加临时红包数据 - UserRedPacketRecord userRedPacketRecord = new UserRedPacketRecord(); - userRedPacketRecord.setMoney(money); - userRedPacketRecord.setRemainingAmount(money); - userRedPacketRecord.setInsertTime(new Date()); - userRedPacketRecord.setCompanyId(1); - userRedPacketRecord.setState(1); - userRedPacketRecord.setOrderId(null); - // 标记为后台发放的红包 - userRedPacketRecord.setIsGrant(1); - userRedPacketRecord.setRedPacketActivityId(redId); -// userRedPacketRecord.setOrderType(3); - userRedPacketRecord.setUserId(Integer.valueOf(s)); - userRedPacketRecordService.insert(userRedPacketRecord); - - TUser tUser = userService.selectById(Integer.valueOf(s)); - Integer language = tUser.getLanguage(); - try { - systemNoticeService.addSystemNotice(1, language == 1 ? "您收到一个额度为GHS"+money+"的红包,请查收。" : language == 2 ? "You have received a red envelope with a limit of GHS"+money+". Please check it." : "Vous recevez un paquet rouge avec une limite de ghs+"+money+", veuillez vérifier.", tUser.getId()); - }catch (Exception e){ - e.printStackTrace(); - } - } } return ResultUtil.success("指派成功",null,"当前红包为随机红包,可能有部分用户无法领取"); } -- Gitblit v1.7.1