From fd6d8ab2d225cf72a4b1fff2cf30fc066f7b02f2 Mon Sep 17 00:00:00 2001 From: tianyongbao Date: Tue, 10 Dec 2024 10:45:34 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=8C=85=E5=8F=B0=E9=A2=84=E7=BA=A6?= =?UTF-8?q?=EF=BC=8C=E5=8A=9F=E8=83=BD=E7=BB=A7=E7=BB=AD=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/ruoyi/invest/domain/ILog.java | 13 ++++++ .../ruoyi/invest/service/IMTLogFactory.java | 5 ++- .../service/impl/IMTLogServiceImpl.java | 2 - .../invest/service/impl/IMTServiceImpl.java | 44 ++++++++++--------- .../resources/mapper/invest/ILogMapper.xml | 10 ++++- 5 files changed, 48 insertions(+), 26 deletions(-) diff --git a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/domain/ILog.java b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/domain/ILog.java index a08e785..645572d 100644 --- a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/domain/ILog.java +++ b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/domain/ILog.java @@ -59,6 +59,17 @@ public class ILog extends BaseEntity @Excel(name = "日志类型") private String type; + /** 详细记录 */ + @ApiModelProperty(value="详细记录") + @Excel(name = "详细记录") + private String logDetail; + + + /** 预约商品 */ + @ApiModelProperty(value="预约商品") + @Excel(name = "预约商品") + private String itemCodeName; + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -70,6 +81,8 @@ public class ILog extends BaseEntity .append("createUser", getCreateUser()) .append("createBy", getCreateBy()) .append("type", getType()) + .append("logDetail", getLogDetail()) + .append("itemCodeName", getItemCodeName()) .toString(); } diff --git a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/IMTLogFactory.java b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/IMTLogFactory.java index d05d4e4..c0da8c5 100644 --- a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/IMTLogFactory.java +++ b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/IMTLogFactory.java @@ -16,7 +16,7 @@ import java.util.TimerTask; public class IMTLogFactory { - public static void reservation(IUser iUser, String logContent,String type) { + public static void reservation(IUser iUser, String logContent,String type,String itemCodeName,String logDetail) { //{"code":2000,"data":{"successDesc":"申购完成,请于7月6日18:00查看预约申购结果","reservationList":[{"reservationId":17053404357,"sessionId":678,"shopId":"233331084001","reservationTime":1688608601720,"itemId":"10214","count":1}],"reservationDetail":{"desc":"申购成功后将以短信形式通知您,请您在申购成功次日18:00前确认支付方式,并在7天内完成提货。","lotteryTime":1688637600000,"cacheValidTime":1688637600000}}} ILog operLog = new ILog(); @@ -32,7 +32,8 @@ public class IMTLogFactory { operLog.setCreateUser(iUser.getUserId()); operLog.setCreateBy(iUser.getCreateBy()); operLog.setLogContent(logContent); - operLog.setCreateTime(new Date()); + operLog.setItemCodeName(itemCodeName); + operLog.setLogDetail(logDetail); operLog.setType(type); AsyncManager.me().execute(recordOper(operLog)); diff --git a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTLogServiceImpl.java b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTLogServiceImpl.java index 6c1d73d..eb8d399 100644 --- a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTLogServiceImpl.java +++ b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTLogServiceImpl.java @@ -2,7 +2,6 @@ package com.ruoyi.invest.service.impl; import com.ruoyi.common.core.utils.IdWorker; -import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.invest.domain.ILog; import com.ruoyi.invest.domain.dto.ILogDto; import com.ruoyi.invest.domain.vo.ILogVo; @@ -55,7 +54,6 @@ public class IMTLogServiceImpl implements IMTLogService { @Override public int insertILog(ILog iLog) { - iLog.setCreateBy(SecurityUtils.getUsername()); iLog.setCreateTime(new Date()); iLog.setLogId(IdWorker.getId()); return iLogMapper.insertILog(iLog); diff --git a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTServiceImpl.java b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTServiceImpl.java index 6c719e9..51c5d18 100644 --- a/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTServiceImpl.java +++ b/ruoyi-modules/intc-invest/src/main/java/com/ruoyi/invest/service/impl/IMTServiceImpl.java @@ -195,6 +195,8 @@ public class IMTServiceImpl implements IMTService { for (String itemId : items) { IItemVo item=iItemMapper.selectIItemByItemCode(itemId); String logContent = ""; + String logDetail = ""; + String itemCodeName = item.getTitle()+"("+itemId+")"; try { String shopId = iShopService.getShopId(iUser.getShopType(), itemId, iUser.getProvinceName(), iUser.getCityName(), iUser.getLat(), iUser.getLng()); @@ -202,17 +204,18 @@ public class IMTServiceImpl implements IMTService { JSONObject json = reservation(iUser, itemId, shopId); IShopVo shop=ishopMapper.selectIShopByIShopId(shopId); - logContent = String.format("[预约项目]:%s,[预约门店]:%s,预约成功!", item.getTitle()+"("+itemId+")", shop.getName()+",地址:"+shop.getAddress(), json.toString()); - + logContent = String.format("[预约项目]:%s,[预约门店]:%s,预约成功!", item.getTitle()+"("+itemId+")", shop.getName()+",地址:"+shop.getAddress()); + logDetail=json.toString(); //随机延迟3~5秒 Random random = new Random(); int sleepTime = random.nextInt(3) + 3; Thread.sleep(sleepTime * 1000); } catch (Exception e) { logContent = String.format("执行报错--[预约项目]:%s,错误原因:%s", item.getTitle()+"("+itemId+")", e.getMessage()); + logDetail=e.getMessage(); } //日志记录 - IMTLogFactory.reservation(iUser, logContent,"1"); + IMTLogFactory.reservation(iUser, logContent,"1",itemCodeName,logDetail); } //预约后延迟领取耐力值 getEnergyAwardDelay(iUser); @@ -224,22 +227,20 @@ public class IMTServiceImpl implements IMTService { * @param iUser */ public void getEnergyAwardDelay(IUser iUser) { - Runnable runnable = new Runnable() { - @Override - public void run() { - String logContent = ""; - //sleep 10秒 - try { - Thread.sleep(10000); - //预约后领取耐力值 - String energyAward = getEnergyAward(iUser); - logContent += "[申购耐力值]:" + energyAward; - } catch (Exception e) { - logContent += "执行报错--[申购耐力值],错误原因:" + e.getMessage(); - } - //日志记录 - IMTLogFactory.reservation(iUser, logContent,"2"); + Runnable runnable = () -> { + String logContent = ""; + String logDetail= ""; + //sleep 10秒 + try { + Thread.sleep(10000); + //预约后领取耐力值 + logDetail = getEnergyAward(iUser); + logContent += "[申购耐力值]:成功!" ; + } catch (Exception e) { + logContent += "执行报错--[申购耐力值],错误原因:" + e.getMessage(); } + //日志记录 + IMTLogFactory.reservation(iUser, logContent,"2","",logDetail); }; new Thread(runnable).start(); @@ -314,15 +315,16 @@ public class IMTServiceImpl implements IMTService { @Override public void getTravelReward(IUser iUser) { String logContent = ""; + String logDetail = ""; try { - String s = travelReward(iUser); + logDetail = travelReward(iUser); logContent += "[获得旅行奖励]:成功!"; } catch (Exception e) { // e.printStackTrace(); logContent += "执行报错--[获得旅行奖励],错误原因:" + e.getMessage(); } //日志记录 - IMTLogFactory.reservation(iUser, logContent,"3"); + IMTLogFactory.reservation(iUser, logContent,"3","",logDetail); } /** @@ -574,7 +576,7 @@ public class IMTServiceImpl implements IMTService { // 预约时间在24小时内的 if (item.getInteger("status") == 2 && DateUtil.between(item.getDate("reservationTime"), new Date(), DateUnit.HOUR) < 24) { String logContent = DateUtil.formatDate(item.getDate("reservationTime")) + " 申购" + item.getString("itemName") + "成功"; - IMTLogFactory.reservation(iUser, logContent,"4"); + IMTLogFactory.reservation(iUser, logContent,"4","",logContent); } } } catch (Exception e) { diff --git a/ruoyi-modules/intc-invest/src/main/resources/mapper/invest/ILogMapper.xml b/ruoyi-modules/intc-invest/src/main/resources/mapper/invest/ILogMapper.xml index 1775535..613ad08 100644 --- a/ruoyi-modules/intc-invest/src/main/resources/mapper/invest/ILogMapper.xml +++ b/ruoyi-modules/intc-invest/src/main/resources/mapper/invest/ILogMapper.xml @@ -14,10 +14,12 @@ + + - select a.log_id, a.mobile, a.log_content, a.status, a.oper_time, a.create_user, a.create_by, a.type, a.create_time from i_log a + select a.log_id, a.mobile,a.item_code_name,a.log_detail, a.log_content, a.status, a.oper_time, a.create_user, a.create_by, a.type, a.create_time from i_log a