Browse Source

fix 添加图片字段

zoujiajian 3 years ago
parent
commit
19ad011980

+ 4 - 0
netflix-dao/src/main/java/com/cyksj/model/entity/WorkOrderChatHistory.java

@@ -44,6 +44,10 @@ public class WorkOrderChatHistory extends BaseEntity {
 	@NotEmpty(message = "回复内容为空")
 	@NotEmpty(message = "回复内容为空")
 	private String content;
 	private String content;
 
 
+	/**
+	 * 图片
+	 */
+	private String imgs;
 
 
 	public enum Messenger {
 	public enum Messenger {
 		root("客服"),
 		root("客服"),

+ 2 - 0
netflix-dao/src/main/java/com/cyksj/model/request/WorkOrderReq.java

@@ -25,4 +25,6 @@ public class WorkOrderReq {
 
 
 	@NotEmpty(message = "请描述您遇到的问题")
 	@NotEmpty(message = "请描述您遇到的问题")
 	private String content;
 	private String content;
+
+	private String imgs;
 }
 }

+ 3 - 0
netflix-dao/src/main/java/com/cyksj/model/views/WorkOrderChatHistoryView.java

@@ -40,6 +40,9 @@ public class WorkOrderChatHistoryView {
 	@DbField("ws.content")
 	@DbField("ws.content")
 	private String content;
 	private String content;
 
 
+	@DbField("ws.imgs")
+	private String imgs;
+
 	@DbField("ws.reply_customer_service_id")
 	@DbField("ws.reply_customer_service_id")
 	private Long replyCustomerServiceId;
 	private Long replyCustomerServiceId;
 
 

+ 16 - 0
netflix-service/src/main/java/com/cyksj/service/user/impl/WorkOrderFrontServiceImpl.java

@@ -1,6 +1,7 @@
 package com.cyksj.service.user.impl;
 package com.cyksj.service.user.impl;
 
 
 import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.StrUtil;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.enums.GatewayApiCode;
 import com.cyksj.enums.GatewayApiCode;
 import com.cyksj.mapper.manage.sys.WorkOrderChatHistoryMapper;
 import com.cyksj.mapper.manage.sys.WorkOrderChatHistoryMapper;
@@ -74,6 +75,14 @@ public class WorkOrderFrontServiceImpl implements WorkOrderFrontService {
 		workOrderChatHistory.setUserId(userId);
 		workOrderChatHistory.setUserId(userId);
 		workOrderChatHistory.setWorkOrderId(workOrder.getId());
 		workOrderChatHistory.setWorkOrderId(workOrder.getId());
 		workOrderChatHistory.setContent(content);
 		workOrderChatHistory.setContent(content);
+		String imgs = workOrderReq.getImgs();
+		if (StrUtil.isNotBlank(imgs)) {
+			if (!imgs.contains("[") && !imgs.contains("]")) {
+				imgs = String.format("[\"%s\"]", imgs);
+			}
+			if (imgs.length() > 2000) throw BusinessRuntimeException.getInstance("选择图片过多");
+			workOrderChatHistory.setImgs(imgs);
+		}
 		historyMapper.insert(workOrderChatHistory);
 		historyMapper.insert(workOrderChatHistory);
 	}
 	}
 
 
@@ -90,6 +99,13 @@ public class WorkOrderFrontServiceImpl implements WorkOrderFrontService {
 		if (!userIds.contains(workOrder.getUserId())) throw BusinessRuntimeException.getInstance("网络错误");
 		if (!userIds.contains(workOrder.getUserId())) throw BusinessRuntimeException.getInstance("网络错误");
 		String content = history.getContent();
 		String content = history.getContent();
 		if (content.length() > 200) throw BusinessRuntimeException.getInstance("回复内容最多200字数以内");
 		if (content.length() > 200) throw BusinessRuntimeException.getInstance("回复内容最多200字数以内");
+		String imgs = history.getImgs();
+		if (StrUtil.isNotBlank(imgs)) {
+			if (!imgs.contains("[") && !imgs.contains("]")) {
+				imgs = String.format("[\"%s\"]", imgs);
+			}
+			if (imgs.length() > 2000) throw BusinessRuntimeException.getInstance("选择图片过多");
+		}
 		history.setFrom(WorkOrderChatHistory.Messenger.user);
 		history.setFrom(WorkOrderChatHistory.Messenger.user);
 		history.setTo(WorkOrderChatHistory.Messenger.root);
 		history.setTo(WorkOrderChatHistory.Messenger.root);
 		historyMapper.insert(history);
 		historyMapper.insert(history);

+ 9 - 0
netflix-web/src/main/java/com/cyksj/web/controller/manage/sys/WorkOrderController.java

@@ -2,6 +2,7 @@ package com.cyksj.web.controller.manage.sys;
 
 
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import cn.dev33.satoken.stp.StpUtil;
 import cn.dev33.satoken.stp.StpUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.common.exception.BusinessRuntimeException;
 import com.cyksj.dto.Result;
 import com.cyksj.dto.Result;
@@ -130,6 +131,14 @@ public class WorkOrderController {
 		if (content.length() > 200) {
 		if (content.length() > 200) {
 			throw BusinessRuntimeException.getInstance("回复内容最多200字数以内");
 			throw BusinessRuntimeException.getInstance("回复内容最多200字数以内");
 		}
 		}
+		String imgs = history.getImgs();
+		if (StrUtil.isNotBlank(imgs)) {
+			if (!imgs.contains("[") && !imgs.contains("]")) {
+				imgs = String.format("[\"%s\"]", imgs);
+			}
+			if (imgs.length() > 2000) throw BusinessRuntimeException.getInstance("选择图片过多");
+			history.setImgs(imgs);
+		}
 		historyMapper.insert(history);
 		historyMapper.insert(history);
 		if (workOrder.getCloseCustomerServiceId() == null) {
 		if (workOrder.getCloseCustomerServiceId() == null) {
 			//记录首次回复聊天的客服
 			//记录首次回复聊天的客服