Compare commits

..

No commits in common. "19a68b314c395e2c7d2b996c7f523c21a0d95e73" and "94540e4d640ef5d49e73f49ec7e9ffd62b9db836" have entirely different histories.

6 changed files with 96 additions and 136 deletions

View File

@ -1,7 +1,5 @@
package com.ruoyi.base.controller;
import cn.hutool.json.JSONArray;
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@ -29,7 +27,6 @@ import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.webSocket.Message;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@ -78,10 +75,9 @@ public class WebController extends BaseController {
/**
* 导航栏接口--所有分类
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("获取站点分类树--所有分类")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -95,10 +91,9 @@ public class WebController extends BaseController {
/**
* 获取站点产品分类树--产品分类
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("获取站点分类树--根据一级分类ID查询所有子级分类树")
@ApiImplicitParams(value = {
@ -120,10 +115,11 @@ public class WebController extends BaseController {
}
/**
* @param id 查询单个分类栏目详情--单页面栏目和询盘栏目使用
* @return com.ruoyi.common.core.domain.R<com.ruoyi.busi.domain.BusiCategory>
*
* @author vinjor-M
* @date 15:44 2025/7/8
* @param id 查询单个分类栏目详情--单页面栏目和询盘栏目使用
* @return com.ruoyi.common.core.domain.R<com.ruoyi.busi.domain.BusiCategory>
**/
@ApiOperation("查询单个分类栏目详情--单页面栏目和询盘栏目使用")
@ApiImplicitParam(name = "id", value = "主键ID", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -134,10 +130,9 @@ public class WebController extends BaseController {
/**
* 轮播图
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("轮播图")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -148,10 +143,9 @@ public class WebController extends BaseController {
/**
* 公司介绍-富文本-首页展示区域
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("公司介绍-富文本-首页展示区域")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -163,10 +157,9 @@ public class WebController extends BaseController {
/**
* 热门产品-前10
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("热门产品-前10")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -177,10 +170,9 @@ public class WebController extends BaseController {
/**
* 普通产品-前10
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("普通产品-前10")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -191,10 +183,9 @@ public class WebController extends BaseController {
/**
* 热门新闻-前10
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("热门新闻-前10")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -205,10 +196,9 @@ public class WebController extends BaseController {
/**
* 页面底部
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("页面底部")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -219,14 +209,13 @@ public class WebController extends BaseController {
/**
* 产品列表分页
*
* @author vinjor-M
* @date 15:17 2025/7/8
* @param tenantId 租户id
* @param catgId 分类ID
* @param pageNum
* @param pageSize
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 15:17 2025/7/8
**/
@ApiOperation("产品列表分页")
@ApiImplicitParams(value = {
@ -265,14 +254,13 @@ public class WebController extends BaseController {
/**
* 新闻列表分页
*
* @author vinjor-M
* @date 15:17 2025/7/8
* @param tenantId 租户id
* @param catgId 分类ID
* @param pageNum
* @param pageSize
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 15:17 2025/7/8
**/
@ApiOperation("新闻列表分页")
@ApiImplicitParams(value = {
@ -311,10 +299,9 @@ public class WebController extends BaseController {
/**
* 产品或新闻详情
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("产品或新闻详情")
@ApiImplicitParam(name = "id", value = "产品或新闻ID", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -325,10 +312,9 @@ public class WebController extends BaseController {
/**
* 全站搜索
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("全站搜索")
@ApiImplicitParams(value = {
@ -347,10 +333,9 @@ public class WebController extends BaseController {
/**
* 查询盘设置-都有哪些字段需要填写是否必填
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("查询盘设置-都有哪些字段需要填写,是否必填")
@ApiImplicitParam(name = "tenantId", value = "站点唯一码", required = true, dataType = "string", paramType = "query", dataTypeClass = String.class)
@ -364,11 +349,10 @@ public class WebController extends BaseController {
/**
* 保存在线聊天内容
*
* @param busiChatMain {@link BusiChatMain}
* @return com.ruoyi.common.core.domain.AjaxResult
* @author PQZ
* @date 15:24 2025/7/17
* @param busiChatMain {@link BusiChatMain}
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@PostMapping("/chatMain")
public AjaxResult saveChatMain(@RequestBody BusiChatMain busiChatMain, HttpServletRequest request) {
@ -381,12 +365,8 @@ public class WebController extends BaseController {
logger.error("识别所属国家失败");
}
ip = StringUtils.isNotEmpty(ip)?ip:"未知";
BusiChatMain result = busiChatMainService.queryByIpAndCusCode(ip, busiChatMain.getCusCode(), busiChatMain.getProdId());
BusiChatMain result = busiChatMainService.queryByIpAndCusCode(ip,busiChatMain.getCusCode());
if (result != null){
if (StringUtils.isNotEmpty(result.getItemJson())) {
JSONArray array = new JSONArray(result.getItemJson());
result.setJsonArray(array);
}
return success(result);
} else {
nationalStr = StringUtils.isNotEmpty(nationalStr)?nationalStr:"未知";
@ -406,27 +386,11 @@ public class WebController extends BaseController {
}
}
/**
* 保存用户消息
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author PQZ
* @date 14:12 2025/8/4
**/
@PostMapping("/saveMessage")
public AjaxResult saveMessage(@RequestBody BusiChatMain busiChatMain) {
busiChatMain.setItemJson(busiChatMain.getJsonArray().toString());
busiChatMainService.updateById(busiChatMain);
return success();
}
/**
* 提交在线询盘表单
*
* @return com.ruoyi.common.core.domain.AjaxResult
* @author vinjor-M
* @date 10:04 2025/7/8
* @return com.ruoyi.common.core.domain.AjaxResult
**/
@ApiOperation("提交在线询盘表单")
@ApiImplicitParams(value = {

View File

@ -1,17 +1,12 @@
package com.ruoyi.busi.domain;
import cn.hutool.json.JSONArray;
import com.baomidou.mybatisplus.annotation.TableField;
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 com.ruoyi.webSocket.Message;
import lombok.*;
import com.ruoyi.common.core.domain.DlBaseEntity;
import java.util.List;
/**
* 在线聊天对象 dl_busi_chat_main
*
@ -70,7 +65,4 @@ public class BusiChatMain extends DlBaseEntity
/** 聊天记录 */
private String itemJson;
@TableField(exist = false)
JSONArray jsonArray;
}

View File

@ -26,5 +26,5 @@ public interface IBusiChatMainService extends IService<BusiChatMain> {
* @author PQZ
* @date 15:31 2025/7/17
**/
BusiChatMain queryByIpAndCusCode(String ip, String cusCode,String prodId);
BusiChatMain queryByIpAndCusCode(String ip, String cusCode);
}

View File

@ -7,7 +7,6 @@ import com.ruoyi.busi.vo.ChatMainVO;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@ -42,14 +41,10 @@ public class BusiChatMainServiceImpl extends ServiceImpl<BusiChatMainMapper,Busi
* @date 15:31 2025/7/17
**/
@Override
public BusiChatMain queryByIpAndCusCode(String ip, String cusCode,String prodId) {
public BusiChatMain queryByIpAndCusCode(String ip, String cusCode) {
LambdaQueryWrapper<BusiChatMain> lambdaQueryWrapper = new LambdaQueryWrapper<>();
lambdaQueryWrapper.eq(BusiChatMain::getCusCode,cusCode)
.eq(BusiChatMain::getIp,ip);
//对应产品
if (StringUtils.isNotEmpty(prodId)) {
lambdaQueryWrapper.eq(BusiChatMain::getProdId,prodId);
}
BusiChatMain chatMain = getOne(lambdaQueryWrapper);
return chatMain;
}

View File

@ -6,6 +6,12 @@ import java.util.Date;
@Data
public class Message {
private Integer id;
// private String username;
// private String userface;
// private String text;
// private Date date;
/**发送方*/
private String dataFrom;
/**聊天内容*/

View File

@ -5,13 +5,16 @@ import java.util.concurrent.atomic.AtomicInteger;
public class MessageUtil {
// private static List<Message> messageList = new CopyOnWriteArrayList<>();
private static AtomicInteger atomicInteger = new AtomicInteger(0);
public Message toMessage(String content){
Message message = new Message();
String[] contents=content.split(",");
String name=contents[0];
String text=contents[1];
int id = atomicInteger.incrementAndGet();
message.setId(id);
message.setDataFrom(name);
message.setContent(text);
message.setCreateTime(new Date());