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 629d416..0c888ee 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 @@ -332,7 +332,8 @@ public class WebController extends BaseController { @ApiImplicitParam(name = "title", value = "标题", required = false, paramType = "body"), @ApiImplicitParam(name = "content", value = "内容", required = true, paramType = "body"), @ApiImplicitParam(name = "email", value = "email", required = false, paramType = "body"), - @ApiImplicitParam(name = "tenantId", value = "公司名称", required = true, paramType = "body") + @ApiImplicitParam(name = "tenantId", value = "站点编码", required = true, paramType = "body"), + @ApiImplicitParam(name = "equipment", value = "设备类型(移动端|电脑端)", required = true, paramType = "body") }) @PostMapping("/inquirySave") public R inquirySave(@ApiIgnore @RequestBody BusiInquiryItem inquiryItem, HttpServletRequest request){ diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNewController.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNewController.java index e425103..ae7a4ef 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNewController.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiNewController.java @@ -116,6 +116,7 @@ public class BusiNewController extends BaseController item.setTenantId(prodNewVO.getTenantId()); item.setFileType(FILE_TYPE_NEWS); }); + basePicsService.saveBatch(prodNewVO.getFileList()); } busiProdNewService.setAmount(prodNewVO.getTenantId()); return success(); @@ -135,6 +136,7 @@ public class BusiNewController extends BaseController item.setTenantId(prodNewVO.getTenantId()); item.setFileType(FILE_TYPE_NEWS); }); + basePicsService.saveBatch(prodNewVO.getFileList()); } return success(); } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProdController.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProdController.java index 1b4bf45..1167ab3 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProdController.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/controller/BusiProdController.java @@ -124,6 +124,7 @@ public class BusiProdController extends BaseController item.setTenantId(prodNewVO.getTenantId()); item.setFileType(FILE_TYPE_PRODUCT); }); + basePicsService.saveBatch(prodNewVO.getFileList()); } busiProdNewService.setAmount(prodNewVO.getTenantId()); return success(); @@ -143,6 +144,7 @@ public class BusiProdController extends BaseController item.setTenantId(prodNewVO.getTenantId()); item.setFileType(FILE_TYPE_PRODUCT); }); + basePicsService.saveBatch(prodNewVO.getFileList()); } return success(); } 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 25278a4..bf371ec 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 @@ -38,12 +38,25 @@ public class StatisticsController extends BaseController */ @GetMapping("/indexData") public AjaxResult list(String tenantId){ - Map> rtnMap = new HashMap<>(); + Map rtnMap = new HashMap<>(); //文章、产品数量 rtnMap.put("prodNews",prodNewService.getIndexData(tenantId)); //询盘流量 rtnMap.put("ipInquiry",busiThirdItemService.inquiryMap(tenantId)); + //询盘来源前十国家 + rtnMap.put("nationalData",busiThirdItemService.nationalData(tenantId)); + //询盘设备 + rtnMap.put("equipmentData",busiThirdItemService.equipmentData(tenantId)); + //近一个月询盘数 + rtnMap.put("dataList",busiThirdItemService.dataList(tenantId)); return success(rtnMap); } + /** + * 询盘走势图,指定时间范围 + */ + @GetMapping("/inquiryChart") + public AjaxResult inquiryChart(String tenantId,String startDate,String endDate){ + return success(busiThirdItemService.inquiryChart(tenantId,startDate,endDate)); + } } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiChatMain.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiChatMain.java index 44230ab..9026694 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiChatMain.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiChatMain.java @@ -46,6 +46,9 @@ public class BusiChatMain extends DlBaseEntity /** 聊天记录数 */ @Excel(name = "聊天记录数") private Integer nums; + /** 设备类型 */ + @Excel(name = "设备类型") + private String equipment; /** 浏览器唯一编码(客户方) */ @Excel(name = "浏览器唯一编码", readConverterExp = "客=户方") diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiInquiryItem.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiInquiryItem.java index 9128b66..00596a5 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiInquiryItem.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/domain/BusiInquiryItem.java @@ -75,6 +75,9 @@ public class BusiInquiryItem extends DlBaseEntity @Excel(name = "洲") @ApiModelProperty("洲") private String oceania; + /** 设备类型 */ + @Excel(name = "设备类型") + private String equipment; /** 页面路径 */ @Excel(name = "页面路径") 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 00a9d41..202ad2f 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 @@ -4,7 +4,9 @@ import java.util.List; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.busi.domain.BusiChatMain; +import com.ruoyi.busi.vo.ChartDataVO; import com.ruoyi.busi.vo.ChatMainVO; +import com.ruoyi.busi.vo.ThirdSoftVO; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -30,4 +32,19 @@ public interface BusiChatMainMapper extends BaseMapper * @return java.lang.Integer **/ Integer selectIpCount(@Param("tenantId")String tenantId,@Param("startDate")String startDate,@Param("endDate")String endDate); + + List selectNationalSortList(@Param("tenantId")String tenantId); + + /** + * 查询询盘设备 + * @author vinjor-M + * @date 10:49 2025/7/16 + * @param tenantId 站点ID + * @return java.util.List + **/ + List selectEquipmentSortList(@Param("tenantId")String tenantId); + + List selectChatVO(@Param("tenantId")String tenantId); + + List selectLineChart(@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 6834186..cc9ce73 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,7 +4,9 @@ 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.ChartDataVO; import com.ruoyi.busi.vo.InquiryItemVO; +import com.ruoyi.busi.vo.ThirdSoftVO; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper; @@ -30,4 +32,26 @@ public interface BusiInquiryItemMapper extends BaseMapper * @return java.lang.Integer **/ Integer selectIpCount(@Param("tenantId")String tenantId,@Param("startDate")String startDate,@Param("endDate")String endDate); + + List selectNationalSortList(@Param("tenantId")String tenantId); + + /** + * 查询询盘设备 + * @author vinjor-M + * @date 10:49 2025/7/16 + * @param tenantId 站点ID + * @return java.util.List + **/ + List selectEquipmentSortList(@Param("tenantId")String tenantId); + + /** + * 查询在线询盘-近30天 + * @author vinjor-M + * @date 16:19 2025/7/16 + * @param tenantId 站点编码 + * @return java.util.List + **/ + List selectinquiryItemVO(@Param("tenantId")String tenantId); + + List selectLineChart(@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 3a8ebd5..8416e2a 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 @@ -4,6 +4,9 @@ import java.util.List; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.ruoyi.busi.domain.BusiThirdItem; +import com.ruoyi.busi.vo.ChartDataVO; +import com.ruoyi.busi.vo.IndexInquiryVO; +import com.ruoyi.busi.vo.ThirdSoftVO; import com.ruoyi.busi.vo.ThirdVO; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -29,4 +32,26 @@ public interface BusiThirdItemMapper extends BaseMapper * @return java.lang.Integer **/ Integer selectIpCount(@Param("tenantId")String tenantId,@Param("thirdSoft")String thirdSoft,@Param("startDate")String startDate,@Param("endDate")String endDate); + + /** + * 查询盘三方来源国家数量,按国家分组计数 + * @author vinjor-M + * @date 10:49 2025/7/16 + * @param tenantId 站点ID + * @return java.util.List + **/ + List selectNationalSortList(@Param("tenantId")String tenantId); + + /** + * 查询询盘设备 + * @author vinjor-M + * @date 10:49 2025/7/16 + * @param tenantId 站点ID + * @return java.util.List + **/ + List selectEquipmentSortList(@Param("tenantId")String tenantId); + + List selectThirdSoft(@Param("tenantId")String tenantId); + + List selectLineChart(@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/service/IBusiThirdItemService.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/service/IBusiThirdItemService.java index ea4ff95..884480f 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 @@ -7,6 +7,8 @@ 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.BusiThirdItem; +import com.ruoyi.busi.vo.ChartDataVO; +import com.ruoyi.busi.vo.IndexInquiryVO; import com.ruoyi.busi.vo.ThirdVO; /** @@ -27,4 +29,42 @@ public interface IBusiThirdItemService extends IService * @return java.util.Map **/ Map inquiryMap(String tenantId); + + /** + * 查询询盘来源前十国家 + * @author vinjor-M + * @date 10:47 2025/7/16 + * @param tenantId 站点编码 + * @return java.util.List + **/ + List nationalData(String tenantId); + + /** + * 查询盘设备 + * @author vinjor-M + * @date 15:15 2025/7/16 + * @param tenantId 站点编码 + * @return java.util.List + **/ + List equipmentData(String tenantId); + + /** + * 首页查询近30天询盘数 + * @author vinjor-M + * @date 15:26 2025/7/16 + * @param tenantId 站点编码 + * @return java.util.List + **/ + List dataList(String tenantId); + + /** + * 询盘走势 + * @author vinjor-M + * @date 17:12 2025/7/16 + * @param tenantId 站点编码 + * @param startDate 开始日期 + * @param endDate 结束日期 + * @return java.util.Map + **/ + Map inquiryChart(String tenantId,String startDate,String endDate); } 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 aaac2c0..16d67e1 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,18 +1,24 @@ package com.ruoyi.busi.service.impl; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; +import java.util.*; +import java.util.function.Function; +import java.util.stream.Collectors; +import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; +import com.ruoyi.busi.domain.BusiChatMain; +import com.ruoyi.busi.domain.BusiInquiryItem; import com.ruoyi.busi.mapper.BusiChatMainMapper; import com.ruoyi.busi.mapper.BusiInquiryItemMapper; +import com.ruoyi.busi.vo.ChartDataVO; +import com.ruoyi.busi.vo.IndexInquiryVO; +import com.ruoyi.busi.vo.ThirdSoftVO; 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.DictConstants; import com.ruoyi.constant.StrConstants; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -120,4 +126,164 @@ public class BusiThirdItemServiceImpl extends ServiceImpl + * @author vinjor-M + * @date 10:47 2025/7/16 + **/ + @Override + public List nationalData(String tenantId) { + //三方系统跳转 + List thirdList = busiThirdItemMapper.selectNationalSortList(tenantId); + //在线询盘 + List inquiryList = inquiryItemMapper.selectNationalSortList(tenantId); + //在线聊天 + List chatList = chatMainMapper.selectNationalSortList(tenantId); + //数据合并 + Map nationalMap = new HashMap<>(); + this.dealMapFun(thirdList,nationalMap); + this.dealMapFun(inquiryList,nationalMap); + this.dealMapFun(chatList,nationalMap); + //转list + List dataVOList = new ArrayList<>(nationalMap.values()) + .stream().sorted(Comparator.comparingInt(ChartDataVO::getValue).reversed()).collect(Collectors.toList()); + return dataVOList; + } + + /** + * 通用将数据追加到map的方法 + * @author vinjor-M + * @date 10:58 2025/7/16 + * @param dataList 数据列表 + * @param nationalMap 国家map + **/ + private void dealMapFun(List dataList,Map nationalMap){ + dataList.forEach(item->{ + if(nationalMap.containsKey(item.getName())){ + ChartDataVO temp = nationalMap.get(item.getName()); + temp.setValue(temp.getValue()+item.getValue()); + nationalMap.put(item.getName(),temp); + }else{ + nationalMap.put(item.getName(),item); + } + }); + } + + /** + * 查询盘设备 + * + * @param tenantId 站点编码 + * @return java.util.List + * @author vinjor-M + * @date 15:15 2025/7/16 + **/ + @Override + public List equipmentData(String tenantId) { + //三方系统跳转 + List thirdList = busiThirdItemMapper.selectEquipmentSortList(tenantId); + //在线询盘 + List inquiryList = inquiryItemMapper.selectEquipmentSortList(tenantId); + //在线聊天 + List chatList = chatMainMapper.selectEquipmentSortList(tenantId); + //数据合并 + Map nationalMap = new HashMap<>(); + this.dealMapFun(thirdList,nationalMap); + this.dealMapFun(inquiryList,nationalMap); + this.dealMapFun(chatList,nationalMap); + //转list + List dataVOList = new ArrayList<>(nationalMap.values()) + .stream().sorted(Comparator.comparingInt(ChartDataVO::getValue).reversed()).collect(Collectors.toList()); + return dataVOList; + } + + /** + * 首页查询近30天询盘数 + * + * @param tenantId 站点编码 + * @return java.util.List + * @author vinjor-M + * @date 15:26 2025/7/16 + **/ + @Override + public List dataList(String tenantId) { + //三方软件按日期、类型数量列表 + List thirdSoftVOList = busiThirdItemMapper.selectThirdSoft(tenantId); + Map> thirdSoftMap = thirdSoftVOList.stream().collect(Collectors.groupingBy(ThirdSoftVO::getDate)); + //在线询盘的 + List inquiryItemVOList = inquiryItemMapper.selectinquiryItemVO(tenantId); + Map> inquiryItemMap = inquiryItemVOList.stream().collect(Collectors.groupingBy(ThirdSoftVO::getDate)); + //在线聊天的 + List chatVOList = chatMainMapper.selectChatVO(tenantId); + Map> chatVOmMap = chatVOList.stream().collect(Collectors.groupingBy(ThirdSoftVO::getDate)); + //返回数据类型 + List rtnList = new ArrayList<>(); + // 初始化一个日期变量,设置为今天 + DateTime date = DateUtil.date(); + // 遍历近30天,每天输出一次日期 + for (int i = 0; i < 30; i++) { + //当天日期 + String dateStr = DateUtil.formatDate(date); + IndexInquiryVO inquiryVO = new IndexInquiryVO(); + inquiryVO.setDate(dateStr); + //在线询盘数 + if(inquiryItemMap.containsKey(dateStr)){ + //有 + inquiryVO.setXunpan(inquiryItemMap.get(dateStr).get(0).getNum()); + }else{ + inquiryVO.setXunpan(0); + } + //在线聊天数 + if(chatVOmMap.containsKey(dateStr)){ + //有 + inquiryVO.setChat(chatVOmMap.get(dateStr).get(0).getNum()); + }else{ + inquiryVO.setChat(0); + } + if(thirdSoftMap.containsKey(dateStr)){ + //有数据 + Map thisMap = thirdSoftMap.get(dateStr).stream().collect(Collectors.toMap(ThirdSoftVO::getThirdSoft,ThirdSoftVO::getNum)); + inquiryVO.setTeams(thisMap.getOrDefault(DictConstants.THIRD_SOFT_TEAMS, 0)); + inquiryVO.setWhatsApp(thisMap.getOrDefault(DictConstants.THIRD_SOFT_WHATSAPP, 0)); + inquiryVO.setEmail(thisMap.getOrDefault(DictConstants.THIRD_SOFT_EMAIL, 0)); + }else{ + inquiryVO.setEmail(0); + inquiryVO.setWhatsApp(0); + inquiryVO.setTeams(0); + } + rtnList.add(inquiryVO); + // 将日期向前偏移一天 + date = DateUtil.offsetDay(date, -1); + } + return rtnList; + } + + /** + * 询盘走势 + * + * @param tenantId 站点编码 + * @param startDate 开始日期 + * @param endDate 结束日期 + * @return java.util.Map + * @author vinjor-M + * @date 17:12 2025/7/16 + **/ + @Override + public Map inquiryChart(String tenantId, String startDate, String endDate) { + //开始日期 + String startDateStr = startDate+StrConstants.START_DATE; + //截止日期 + String endDateStr = startDate+StrConstants.END_DATE; + //先查出这段时间所有三方询盘数据 + List thirdItemList = busiThirdItemMapper.selectLineChart(tenantId,startDateStr,endDateStr); + //这段时间所有在线询盘数据 + List inquiryItemList = inquiryItemMapper.selectLineChart(tenantId, startDateStr, endDateStr); + //这段时间所有在线聊天的数据 + List chatMainList = chatMainMapper.selectLineChart(tenantId, startDateStr, endDateStr); + + return null; + } } diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ChartDataVO.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ChartDataVO.java new file mode 100644 index 0000000..50c1d0f --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ChartDataVO.java @@ -0,0 +1,9 @@ +package com.ruoyi.busi.vo; + +import lombok.Data; + +@Data +public class ChartDataVO { + private String name; + private Integer value; +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/IndexInquiryVO.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/IndexInquiryVO.java new file mode 100644 index 0000000..dfd463c --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/IndexInquiryVO.java @@ -0,0 +1,36 @@ +package com.ruoyi.busi.vo; + +import lombok.Data; + +/** + * 首页询盘数实体 + * @author vinjor-M + * @date 15:25 2025/7/16 +**/ +@Data +public class IndexInquiryVO { + /** + * 日期 + */ + private String date; + /** + * 在线询盘数 + */ + private Integer xunpan; + /** + * email数 + */ + private Integer email; + /** + * whatsApp数 + */ + private Integer whatsApp; + /** + * teams数 + */ + private Integer teams; + /** + * 在线聊天数 + */ + private Integer chat; +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ThirdSoftVO.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ThirdSoftVO.java new file mode 100644 index 0000000..31fed6a --- /dev/null +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/busi/vo/ThirdSoftVO.java @@ -0,0 +1,19 @@ +package com.ruoyi.busi.vo; + +import lombok.Data; + +@Data +public class ThirdSoftVO { + /** + * 日期 + */ + private String date; + /** + * 三方软件 + */ + private String thirdSoft; + /** + * 数量 + */ + private Integer num; +} diff --git a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/DictConstants.java b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/DictConstants.java index 234e2c0..1b12197 100644 --- a/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/DictConstants.java +++ b/dl_admin/ruoyi-admin/src/main/java/com/ruoyi/constant/DictConstants.java @@ -41,6 +41,35 @@ public class DictConstants * 数据类型字典-新闻 */ public static final String DATA_TYPE_NEWS ="news"; + /** + * 设备类型字典-KEY + */ + public static final String EQUIPMENT_TYPE_KEY ="equipment_type"; + /** + * 设备类型字典-移动端 + */ + public static final String EQUIPMENT_TYPE_PHONE ="移动端"; + /** + * 设备类型字典-电脑端 + */ + public static final String EQUIPMENT_TYPE_PC ="电脑端"; + + /** + * 三方软件类型字典-KEY + */ + public static final String THIRD_SOFT_KEY ="third_soft"; + /** + * 三方软件类型字典-Teams + */ + public static final String THIRD_SOFT_TEAMS ="Teams"; + /** + * 三方软件类型字典-WhatsApp + */ + public static final String THIRD_SOFT_WHATSAPP ="WhatsApp"; + /** + * 三方软件类型字典-Email + */ + public static final String THIRD_SOFT_EMAIL ="Email"; /** diff --git a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiCategoryMapper.xml b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiCategoryMapper.xml index 12ff350..f268318 100644 --- a/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiCategoryMapper.xml +++ b/dl_admin/ruoyi-admin/src/main/resources/mapper/busi/BusiCategoryMapper.xml @@ -30,7 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" select id, catg_name, catg_level, catg_type, parent_id, prods_junior, prods_all, title, keyword, description, sort, content, prod_up, prod_down, tenant_id, creator, create_time, updater, update_time, del_flag from dl_busi_category - SELECT id FROM 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 a63ef09..b95514a 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 @@ -13,6 +13,7 @@ + @@ -28,7 +29,7 @@ select id, prod_id, - ip, national, oceania, nums, cus_code, user_id, tenant_id, creator, create_time, updater, update_time, del_flag + ip, national, oceania, nums, cus_code, user_id,equipment, tenant_id, creator, create_time, updater, update_time, del_flag from dl_busi_chat_main @@ -43,6 +44,7 @@ CONCAT('%',#{entity.prodName},'%') and dbcm.ip = #{entity.ip} + and dbcm.equipment = #{entity.equipment} and dbcm.national LIKE CONCAT('%',#{entity.national},'%') @@ -75,4 +77,57 @@ and (create_time <= #{endDate} OR update_time >= #{endDate}) + + + + \ 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 39451d8..a702ad8 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 @@ -15,6 +15,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + @@ -25,7 +26,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 + select id, company_name, name, tel, title, content, email, ip, national, oceania,equipment, page_url, tenant_id, creator, create_time, updater, update_time, del_flag from dl_busi_inquiry_item + + + + \ 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 6113cf0..bcfdb1c 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 @@ -68,4 +68,58 @@ order by dbti.create_time DESC and create_time <= #{endDate} + + + + \ No newline at end of file diff --git a/dl_vue/src/App.vue b/dl_vue/src/App.vue index b3ae18f..ec1da9a 100644 --- a/dl_vue/src/App.vue +++ b/dl_vue/src/App.vue @@ -41,7 +41,14 @@ export default { /deep/.dl-flex-column { display: flex; justify-content: start; - align-items: center + align-items: center; +} +/deep/.dl-flex-row { + display: flex; + justify-content: start; + align-items: start; + flex-direction: column; + line-height: 14px; } /deep/.dl-flex-column-center { display: flex; diff --git a/dl_vue/src/api/statistics/statistics.js b/dl_vue/src/api/statistics/statistics.js index 9382a98..63cf54e 100644 --- a/dl_vue/src/api/statistics/statistics.js +++ b/dl_vue/src/api/statistics/statistics.js @@ -9,3 +9,12 @@ export function indexData(query) { }) } +// 首页数据统计 +export function inquiryChart(query) { + return request({ + url: '/statistics/inquiryChart', + method: 'get', + params: query + }) +} + diff --git a/dl_vue/src/views/busi/chatMain/index.vue b/dl_vue/src/views/busi/chatMain/index.vue index a405619..ec5a799 100644 --- a/dl_vue/src/views/busi/chatMain/index.vue +++ b/dl_vue/src/views/busi/chatMain/index.vue @@ -114,6 +114,7 @@ + -