From 8103fa9252b2777d23aaef5f1c213d7877fef2c2 Mon Sep 17 00:00:00 2001 From: Vinjor Date: Mon, 14 Jul 2025 16:19:21 +0800 Subject: [PATCH] 1 --- .../ruoyi/base/controller/WebController.java | 31 +- .../com/ruoyi/base/domain/BaseNational.java | 38 ++ .../ruoyi/base/mapper/BaseNationalMapper.java | 21 + .../base/service/IBaseNationalService.java | 28 ++ .../service/impl/BaseNationalServiceImpl.java | 46 +++ .../controller/BusiInquiryItemController.java | 7 +- .../busi/controller/StatisticsController.java | 2 + .../ruoyi/busi/mapper/BusiChatMainMapper.java | 11 + .../busi/mapper/BusiInquiryItemMapper.java | 14 +- .../busi/mapper/BusiThirdItemMapper.java | 10 + .../busi/service/IBusiInquiryItemService.java | 3 +- .../busi/service/IBusiThirdItemService.java | 11 + .../impl/BusiInquiryItemServiceImpl.java | 4 +- .../impl/BusiThirdItemServiceImpl.java | 88 +++- .../java/com/ruoyi/busi/vo/InquiryItemVO.java | 15 + .../java/com/ruoyi/constant/StrConstants.java | 10 +- .../mapper/busi/BusiChatMainMapper.xml | 15 + .../mapper/busi/BusiInquiryItemMapper.xml | 21 +- .../mapper/busi/BusiThirdItemMapper.xml | 20 +- dl_vue/src/api/busi/inquiryItem.js | 9 + dl_vue/src/views/busi/inquiryItem/index.vue | 382 ------------------ .../views/statistics/inquiryItem/index.vue | 293 ++++++++++++++ .../src/views/statistics/thirdItem/index.vue | 63 +-- 23 files changed, 684 insertions(+), 458 deletions(-) create mode 100644 dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/domain/BaseNational.java create mode 100644 dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/mapper/BaseNationalMapper.java create mode 100644 dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/IBaseNationalService.java create mode 100644 dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/impl/BaseNationalServiceImpl.java create mode 100644 dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/InquiryItemVO.java delete mode 100644 dl_vue/src/views/busi/inquiryItem/index.vue create mode 100644 dl_vue/src/views/statistics/inquiryItem/index.vue diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/controller/WebController.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/controller/WebController.java index 6d8561c..629d416 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/controller/WebController.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/controller/WebController.java @@ -7,12 +7,14 @@ import com.ruoyi.base.domain.BaseInquiry; import com.ruoyi.base.domain.BasePic; import com.ruoyi.base.domain.BaseSiteInfo; import com.ruoyi.base.service.IBaseInquiryService; +import com.ruoyi.base.service.IBaseNationalService; import com.ruoyi.base.service.IBasePicService; import com.ruoyi.base.service.IBaseSiteInfoService; import com.ruoyi.busi.domain.BusiCategory; import com.ruoyi.busi.domain.BusiInquiryItem; import com.ruoyi.busi.domain.BusiProdNew; import com.ruoyi.busi.service.IBusiCategoryService; +import com.ruoyi.busi.service.IBusiInquiryItemService; import com.ruoyi.busi.service.IBusiProdNewService; import com.ruoyi.busi.utils.CommonUtils; import com.ruoyi.busi.vo.BusiCategoryVO; @@ -63,7 +65,9 @@ public class WebController extends BaseController { @Autowired private IBusiProdNewService prodNewService; @Autowired - private CommonUtils commonUtils; + private IBaseNationalService nationalService; + @Autowired + private IBusiInquiryItemService inquiryItemService; /** * 导航栏接口--所有分类 @@ -331,9 +335,28 @@ public class WebController extends BaseController { @ApiImplicitParam(name = "tenantId", value = "公司名称", required = true, paramType = "body") }) @PostMapping("/inquirySave") - public R inquirySave(@ApiIgnore @RequestBody BusiInquiryItem inquiryItem, HttpServletRequest request){ - String ip = CommonUtils.getIpAddr(request); - System.out.println(CommonUtils.getAddr(ip)); + public R inquirySave(@ApiIgnore @RequestBody BusiInquiryItem inquiryItem, HttpServletRequest request){ + String ip = ""; + String nationalStr = ""; + try { + ip = CommonUtils.getIpAddr(request); + nationalStr = CommonUtils.getAddr(ip); + }catch (Exception e){ + logger.error("识别所属国家失败"); + } + ip = StringUtils.isNotEmpty(ip)?ip:"未知"; + nationalStr = StringUtils.isNotEmpty(nationalStr)?nationalStr:"未知"; + String national = nationalStr.split("\\|")[0]; + System.out.println(ip+"-----"+nationalStr); + String oceania = "未知"; + Map nationalMap = nationalService.getNationalMap(); + if(nationalMap.containsKey(national)){ + oceania = nationalMap.get(national); + } + inquiryItem.setIp(ip); + inquiryItem.setNational(national); + inquiryItem.setOceania(oceania); + inquiryItemService.save(inquiryItem); return R.ok(); } } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/domain/BaseNational.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/domain/BaseNational.java new file mode 100644 index 0000000..7b1ca15 --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/domain/BaseNational.java @@ -0,0 +1,38 @@ +package com.ruoyi.base.domain; + +import com.ruoyi.common.annotation.Excel; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; +import com.ruoyi.common.core.domain.DlBaseEntity; + +/** + * 国家列对象 dl_base_national + * + * @author vinjor-m + * @date 2025-07-11 + */ +@TableName("dl_base_national") +@Data +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class BaseNational +{ + private static final long serialVersionUID = 1L; + + /** 主键 */ + @TableId(type = IdType.ASSIGN_UUID) + private Integer id; + + /** 国家 */ + @Excel(name = "国家") + private String national; + + /** 洲 */ + @Excel(name = "洲") + private String oceania; + +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/mapper/BaseNationalMapper.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/mapper/BaseNationalMapper.java new file mode 100644 index 0000000..0020c21 --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/mapper/BaseNationalMapper.java @@ -0,0 +1,21 @@ +package com.ruoyi.base.mapper; + +import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.base.domain.BaseNational; +import org.apache.ibatis.annotations.Param; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * 国家列Mapper接口 + * + * @author vinjor-m + * @date 2025-07-11 + */ +@Mapper +public interface BaseNationalMapper extends BaseMapper +{ + IPage queryListPage(@Param("entity") BaseNational entity, Page page); +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/IBaseNationalService.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/IBaseNationalService.java new file mode 100644 index 0000000..d6936ef --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/IBaseNationalService.java @@ -0,0 +1,28 @@ +package com.ruoyi.base.service; + +import java.util.List; +import java.util.Map; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; +import com.ruoyi.base.domain.BaseNational; + +/** + * 国家列Service接口 + * + * @author vinjor-m + * @date 2025-07-11 + */ +public interface IBaseNationalService extends IService +{ + IPage queryListPage(BaseNational pageReqVO, Page page); + + /** + * 返回所有国家列表map + * @author vinjor-M + * @date 11:36 2025/7/11 + * @return java.util.Map + **/ + Map getNationalMap(); +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/impl/BaseNationalServiceImpl.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/impl/BaseNationalServiceImpl.java new file mode 100644 index 0000000..8372fe0 --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/base/service/impl/BaseNationalServiceImpl.java @@ -0,0 +1,46 @@ +package com.ruoyi.base.service.impl; + +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.base.mapper.BaseNationalMapper; +import com.ruoyi.base.domain.BaseNational; +import com.ruoyi.base.service.IBaseNationalService; + +/** + * 国家列Service业务层处理 + * + * @author vinjor-m + * @date 2025-07-11 + */ +@Service +public class BaseNationalServiceImpl extends ServiceImpl implements IBaseNationalService +{ + @Autowired + private BaseNationalMapper baseNationalMapper; + + @Override + public IPage queryListPage(BaseNational pageReqVO, Page page) { + return baseNationalMapper.queryListPage(pageReqVO, page); + } + + /** + * 返回所有国家列表map + * + * @return java.util.Map + * @author vinjor-M + * @date 11:36 2025/7/11 + **/ + @Override + @Cacheable("national_map") + public Map getNationalMap() { + return this.list().stream().collect(Collectors.toMap(BaseNational::getNational,BaseNational::getOceania)); + } +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiInquiryItemController.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiInquiryItemController.java index 1a8dbce..e2b091c 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiInquiryItemController.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiInquiryItemController.java @@ -6,6 +6,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.ruoyi.busi.vo.InquiryItemVO; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -44,9 +45,9 @@ public class BusiInquiryItemController extends BaseController */ @PreAuthorize("@ss.hasPermi('busi:inquiryItem:list')") @GetMapping("/list") - public AjaxResult list(BusiInquiryItem busiInquiryItem, - @RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum, - @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) + public AjaxResult list(InquiryItemVO busiInquiryItem, + @RequestParam(name = "pageNum", defaultValue = "1") Integer pageNum, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { Page page = new Page<>(pageNum, pageSize); IPage list = busiInquiryItemService.queryListPage(busiInquiryItem,page); diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/StatisticsController.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/StatisticsController.java index 2904a55..25278a4 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/StatisticsController.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/StatisticsController.java @@ -41,6 +41,8 @@ public class StatisticsController extends BaseController Map> rtnMap = new HashMap<>(); //文章、产品数量 rtnMap.put("prodNews",prodNewService.getIndexData(tenantId)); + //询盘流量 + rtnMap.put("ipInquiry",busiThirdItemService.inquiryMap(tenantId)); return success(rtnMap); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiChatMainMapper.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiChatMainMapper.java index cd3f115..00a9d41 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiChatMainMapper.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiChatMainMapper.java @@ -19,4 +19,15 @@ import org.apache.ibatis.annotations.Mapper; public interface BusiChatMainMapper extends BaseMapper { IPage queryListPage(@Param("entity") ChatMainVO entity, Page page); + + /** + * 查询IP数量 + * @author vinjor-M + * @date 16:29 2025/7/11 + * @param tenantId TODO + * @param startDate TODO + * @param endDate TODO + * @return java.lang.Integer + **/ + Integer selectIpCount(@Param("tenantId")String tenantId,@Param("startDate")String startDate,@Param("endDate")String endDate); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiInquiryItemMapper.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiInquiryItemMapper.java index e7b27b0..6834186 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiInquiryItemMapper.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiInquiryItemMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.busi.domain.BusiInquiryItem; +import com.ruoyi.busi.vo.InquiryItemVO; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -17,5 +18,16 @@ import org.apache.ibatis.annotations.Mapper; @Mapper public interface BusiInquiryItemMapper extends BaseMapper { - IPage queryListPage(@Param("entity") BusiInquiryItem entity, Page page); + IPage queryListPage(@Param("entity") InquiryItemVO entity, Page page); + + /** + * 查询IP数量 + * @author vinjor-M + * @date 16:29 2025/7/11 + * @param tenantId TODO + * @param startDate TODO + * @param endDate TODO + * @return java.lang.Integer + **/ + Integer selectIpCount(@Param("tenantId")String tenantId,@Param("startDate")String startDate,@Param("endDate")String endDate); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiThirdItemMapper.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiThirdItemMapper.java index 06e54b2..3a8ebd5 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiThirdItemMapper.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/mapper/BusiThirdItemMapper.java @@ -19,4 +19,14 @@ import org.apache.ibatis.annotations.Mapper; public interface BusiThirdItemMapper extends BaseMapper { IPage queryListPage(@Param("entity") ThirdVO entity, Page page); + /** + * 查询IP数量 + * @author vinjor-M + * @date 16:29 2025/7/11 + * @param tenantId TODO + * @param startDate TODO + * @param endDate TODO + * @return java.lang.Integer + **/ + Integer selectIpCount(@Param("tenantId")String tenantId,@Param("thirdSoft")String thirdSoft,@Param("startDate")String startDate,@Param("endDate")String endDate); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiInquiryItemService.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiInquiryItemService.java index e46991e..0c360ef 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiInquiryItemService.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiInquiryItemService.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.ruoyi.busi.domain.BusiInquiryItem; +import com.ruoyi.busi.vo.InquiryItemVO; /** * 在线询盘记录Service接口 @@ -14,5 +15,5 @@ import com.ruoyi.busi.domain.BusiInquiryItem; */ public interface IBusiInquiryItemService extends IService { - IPage queryListPage(BusiInquiryItem pageReqVO, Page page); + IPage queryListPage(InquiryItemVO pageReqVO, Page page); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiThirdItemService.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiThirdItemService.java index 8e2fcc7..ea4ff95 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiThirdItemService.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiThirdItemService.java @@ -1,6 +1,8 @@ package com.ruoyi.busi.service; import java.util.List; +import java.util.Map; + import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; @@ -16,4 +18,13 @@ import com.ruoyi.busi.vo.ThirdVO; public interface IBusiThirdItemService extends IService { IPage queryListPage(ThirdVO pageReqVO, Page page); + + /** + * 首页询盘总流量 + * @author vinjor-M + * @date 16:25 2025/7/11 + * @param tenantId TODO + * @return java.util.Map + **/ + Map inquiryMap(String tenantId); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiInquiryItemServiceImpl.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiInquiryItemServiceImpl.java index fbd9356..99e8106 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiInquiryItemServiceImpl.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiInquiryItemServiceImpl.java @@ -1,6 +1,8 @@ package com.ruoyi.busi.service.impl; import java.util.List; + +import com.ruoyi.busi.vo.InquiryItemVO; import com.ruoyi.common.utils.DateUtils; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -24,7 +26,7 @@ public class BusiInquiryItemServiceImpl extends ServiceImpl queryListPage(BusiInquiryItem pageReqVO, Page page) { + public IPage queryListPage(InquiryItemVO pageReqVO, Page page) { return busiInquiryItemMapper.queryListPage(pageReqVO, page); } } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiThirdItemServiceImpl.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiThirdItemServiceImpl.java index b25a0de..aaac2c0 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiThirdItemServiceImpl.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/impl/BusiThirdItemServiceImpl.java @@ -1,12 +1,19 @@ package com.ruoyi.busi.service.impl; +import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; +import cn.hutool.core.date.DateUtil; +import com.ruoyi.busi.mapper.BusiChatMainMapper; +import com.ruoyi.busi.mapper.BusiInquiryItemMapper; import com.ruoyi.busi.vo.ThirdVO; import com.ruoyi.common.utils.DateUtils; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.common.utils.StringUtils; +import com.ruoyi.constant.StrConstants; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -25,15 +32,92 @@ public class BusiThirdItemServiceImpl extends ServiceImpl queryListPage(ThirdVO pageReqVO, Page page) { if(StringUtils.isNotEmpty(pageReqVO.getStartDate())){ - pageReqVO.setStartDate(pageReqVO.getStartDate()+" 00:00:00"); + pageReqVO.setStartDate(pageReqVO.getStartDate()+ StrConstants.START_DATE); } if(StringUtils.isNotEmpty(pageReqVO.getEndDate())){ - pageReqVO.setEndDate(pageReqVO.getEndDate()+" 23:59:59"); + pageReqVO.setEndDate(pageReqVO.getEndDate()+StrConstants.END_DATE); } return busiThirdItemMapper.queryListPage(pageReqVO, page); } + + /** + * 首页询盘总流量 + * + * @param tenantId TODO + * @return java.util.Map + * @author vinjor-M + * @date 16:25 2025/7/11 + **/ + @Override + public Map inquiryMap(String tenantId) { + Map rtnMap = new HashMap<>(); + /*1.所有日期*/ + //当前日期 + String nowDay = DateUtil.formatDate(new Date()); + String todayStart = nowDay+StrConstants.START_DATE; + String todayEnd = nowDay+StrConstants.END_DATE; + //昨日日期 + String yesterday = DateUtil.formatDate(DateUtil.offsetDay(new Date(),-1)); + String yesterdayStart = yesterday+StrConstants.START_DATE; + String yesterdayEnd = yesterday+StrConstants.END_DATE; + //近30日开始日期 + String monthStart = DateUtil.formatDate(DateUtil.offsetDay(new Date(),-30))+StrConstants.START_DATE; + String monthEnd = nowDay+StrConstants.END_DATE; + + /*2.1 三方IP数据*/ + //三方的IP总数 + Integer thirdNum = busiThirdItemMapper.selectIpCount(tenantId,null,null,null); + //今日三方IP总数 + Integer thirdNumToday = busiThirdItemMapper.selectIpCount(tenantId,null,todayStart,todayEnd); + //昨日三方IP总数 + Integer thirdNumYesterday = busiThirdItemMapper.selectIpCount(tenantId,null,yesterdayStart,yesterdayEnd); + //近30日三方IP总数 + Integer thirdNumMonth = busiThirdItemMapper.selectIpCount(tenantId,null,monthStart,monthEnd); + /*2.2 在线询盘IP数据*/ + //在线询盘的IP总数 + Integer formNum = inquiryItemMapper.selectIpCount(tenantId,null,null); + //今日在线询盘的IP总数 + Integer formNumToday = inquiryItemMapper.selectIpCount(tenantId,todayStart,todayEnd); + //昨日在线询盘IP总数 + Integer formNumYesterday = inquiryItemMapper.selectIpCount(tenantId,yesterdayStart,yesterdayEnd); + //近30日在线询盘IP总数 + Integer formNumMonth = inquiryItemMapper.selectIpCount(tenantId,monthStart,monthEnd); + /*2.3 在线聊天IP数据*/ + //在线询盘的IP总数 + Integer chatNum = chatMainMapper.selectIpCount(tenantId,null,null); + //今日在线询盘的IP总数 + Integer chatNumToday = chatMainMapper.selectIpCount(tenantId,todayStart,todayEnd); + //昨日在线询盘IP总数 + Integer chatNumYesterday = chatMainMapper.selectIpCount(tenantId,yesterdayStart,yesterdayEnd); + //近30日在线询盘IP总数 + Integer chatNumMonth = chatMainMapper.selectIpCount(tenantId,monthStart,monthEnd); + //组装IP数量 + rtnMap.put("ipNum",thirdNum+formNum+chatNum); + rtnMap.put("ipNumToday",thirdNumToday+formNumToday+chatNumToday); + rtnMap.put("ipNumYesterday",thirdNumYesterday+formNumYesterday+chatNumYesterday); + rtnMap.put("ipNumMonth",thirdNumMonth+formNumMonth+chatNumMonth); + + /*3.1 Teams 记录数*/ + Integer teamsNum = busiThirdItemMapper.selectIpCount(tenantId,"Teams",null,null); + /*3.2 WhatsApp 记录数*/ + Integer whatsAppNum = busiThirdItemMapper.selectIpCount(tenantId,"WhatsApp",null,null); + /*3.2 Email 记录数*/ + Integer emailNum = busiThirdItemMapper.selectIpCount(tenantId,"Email",null,null); + //组装询盘数量 + rtnMap.put("formNum",formNum); + rtnMap.put("chatNum",chatNum); + rtnMap.put("teamsNum",teamsNum); + rtnMap.put("whatsAppNum",whatsAppNum); + rtnMap.put("emailNum",emailNum); + rtnMap.put("inquiryNum",formNum+chatNum+teamsNum+whatsAppNum+emailNum); + return rtnMap; + } } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/InquiryItemVO.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/InquiryItemVO.java new file mode 100644 index 0000000..efc2345 --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/InquiryItemVO.java @@ -0,0 +1,15 @@ +package com.ruoyi.busi.vo; + +import com.ruoyi.busi.domain.BusiInquiryItem; +import com.ruoyi.busi.domain.BusiThirdItem; +import lombok.Data; +import lombok.EqualsAndHashCode; + +@EqualsAndHashCode(callSuper = true) +@Data +public class InquiryItemVO extends BusiInquiryItem { + /** 时间范围-开始 */ + private String startDate; + /** 时间范围-结束 */ + private String endDate; +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/StrConstants.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/StrConstants.java index feec9e8..7c37070 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/StrConstants.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/StrConstants.java @@ -6,6 +6,12 @@ package com.ruoyi.constant; * @author ruoyi */ public class StrConstants { - - + /** + * 开始时间 + */ + public static final String START_DATE =" 00:00:00"; + /** + * 结束时间 + */ + public static final String END_DATE =" 23:59:59"; } diff --git a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiChatMainMapper.xml b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiChatMainMapper.xml index 28f8c85..a63ef09 100644 --- a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiChatMainMapper.xml +++ b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiChatMainMapper.xml @@ -60,4 +60,19 @@ order BY dbcm.create_time DESC,dbcm.update_time DESC + \ No newline at end of file diff --git a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiInquiryItemMapper.xml b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiInquiryItemMapper.xml index 3c63561..39451d8 100644 --- a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiInquiryItemMapper.xml +++ b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiInquiryItemMapper.xml @@ -28,7 +28,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, company_name, name, tel, title, content, email, ip, national, oceania, page_url, tenant_id, creator, create_time, updater, update_time, del_flag from dl_busi_inquiry_item - and company_name like concat('%', #{entity.companyName}, '%') @@ -42,6 +42,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and oceania = #{entity.oceania} and page_url = #{entity.pageUrl} and tenant_id = #{entity.tenantId} + and create_time >= #{entity.startDate} + and create_time <= #{entity.endDate} + + + \ No newline at end of file diff --git a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiThirdItemMapper.xml b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiThirdItemMapper.xml index 8b68abc..6113cf0 100644 --- a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiThirdItemMapper.xml +++ b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiThirdItemMapper.xml @@ -31,7 +31,7 @@ from dl_busi_third_item - select dbti.*,dbpn.title AS prod_name from dl_busi_third_item dbti left join dl_busi_prod_new dbpn on dbti.prod_id = dbpn.id @@ -50,4 +50,22 @@ order by dbti.create_time DESC + \ No newline at end of file diff --git a/dl_vue/src/api/busi/inquiryItem.js b/dl_vue/src/api/busi/inquiryItem.js index c55c4fc..77c1dbe 100644 --- a/dl_vue/src/api/busi/inquiryItem.js +++ b/dl_vue/src/api/busi/inquiryItem.js @@ -42,3 +42,12 @@ export function delInquiryItem(id) { method: 'delete' }) } + +// 查询在线询盘记录详细 +export function getInquirySet(query) { + return request({ + url: '/web/inquirySet', + method: 'get', + params: query + }) +} diff --git a/dl_vue/src/views/busi/inquiryItem/index.vue b/dl_vue/src/views/busi/inquiryItem/index.vue deleted file mode 100644 index f85caba..0000000 --- a/dl_vue/src/views/busi/inquiryItem/index.vue +++ /dev/null @@ -1,382 +0,0 @@ - - - diff --git a/dl_vue/src/views/statistics/inquiryItem/index.vue b/dl_vue/src/views/statistics/inquiryItem/index.vue new file mode 100644 index 0000000..7308795 --- /dev/null +++ b/dl_vue/src/views/statistics/inquiryItem/index.vue @@ -0,0 +1,293 @@ + + + diff --git a/dl_vue/src/views/statistics/thirdItem/index.vue b/dl_vue/src/views/statistics/thirdItem/index.vue index f2279cc..dc82c67 100644 --- a/dl_vue/src/views/statistics/thirdItem/index.vue +++ b/dl_vue/src/views/statistics/thirdItem/index.vue @@ -194,63 +194,6 @@ @pagination="getList" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -372,15 +315,15 @@ export default { /** 搜索按钮操作 */ handleQuery() { this.queryParams.pageNum = 1 - console.log(this.queryParams.dataRange,"12") + console.log(this.queryParams.dataRange, '12') if (this.queryParams.dataRange && this.queryParams.dataRange.length > 1) { this.queryParams.startDate = this.formatDate(this.queryParams.dataRange[0]) this.queryParams.endDate = this.formatDate(this.queryParams.dataRange[1]) - }else{ + this.getList() + } else { this.queryParams.startDate = null this.queryParams.endDate = null } - this.getList() }, /** * 格式化时间戳