diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/IDmRegularManager.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/IDmRegularManager.java index 9cf1dcaa..fb54f8a8 100644 --- a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/IDmRegularManager.java +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/IDmRegularManager.java @@ -1,11 +1,10 @@ package com.xueyi.nlt.nlt.manager; import com.xueyi.common.web.entity.manager.IBaseManager; -import com.xueyi.nlt.api.nlt.domain.vo.DmIntentVo; import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; import com.xueyi.nlt.nlt.domain.dto.DmRegularDto; import com.xueyi.nlt.nlt.domain.query.DmRegularQuery; public interface IDmRegularManager extends IBaseManager { - public DmIntentResponse doRegularMatch(DmIntentVo intent); + public DmIntentResponse doRegularMatch(String content); } diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/impl/DmRegularManager.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/impl/DmRegularManager.java index 234d3a74..74c88f00 100644 --- a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/impl/DmRegularManager.java +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/manager/impl/DmRegularManager.java @@ -2,7 +2,6 @@ package com.xueyi.nlt.nlt.manager.impl; import com.xueyi.common.web.entity.manager.impl.BaseManagerImpl; -import com.xueyi.nlt.api.nlt.domain.vo.DmIntentVo; import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; import com.xueyi.nlt.nlt.domain.model.DmRegularConverter; import com.xueyi.nlt.nlt.domain.po.DmRegularPo; @@ -19,11 +18,11 @@ import java.util.regex.Pattern; @Component public class DmRegularManager extends BaseManagerImpl implements IDmRegularManager { @Override - public DmIntentResponse doRegularMatch(DmIntentVo intent) { + public DmIntentResponse doRegularMatch(String content) { DmIntentResponse response = new DmIntentResponse(); List regularPos =baseMapper.selectList(null); for (DmRegularPo regularPo : regularPos) { - if (isMatchRegular(intent.getContent(), regularPo.getExpression())) { + if (isMatchRegular(content, regularPo.getExpression())) { response.setMsg(regularPo.getText()); response.setSkillCode(regularPo.getSkillCode()); response.setAction(regularPo.getAction()); diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmIntentService.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmIntentService.java index 79981a70..a54cd4b3 100644 --- a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmIntentService.java +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmIntentService.java @@ -1,8 +1,11 @@ package com.xueyi.nlt.nlt.service; import com.xueyi.common.web.entity.service.IBaseService; +import com.xueyi.nlt.api.nlt.domain.vo.DmIntentVo; +import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; import com.xueyi.nlt.nlt.domain.dto.DmIntentDto; import com.xueyi.nlt.nlt.domain.query.DmIntentQuery; public interface IDmIntentService extends IBaseService { + DmIntentResponse conversation(DmIntentVo intent); } diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmRegularService.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmRegularService.java new file mode 100644 index 00000000..1615ead6 --- /dev/null +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/IDmRegularService.java @@ -0,0 +1,10 @@ +package com.xueyi.nlt.nlt.service; + +import com.xueyi.common.web.entity.service.IBaseService; +import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; +import com.xueyi.nlt.nlt.domain.dto.DmRegularDto; +import com.xueyi.nlt.nlt.domain.query.DmRegularQuery; + +public interface IDmRegularService extends IBaseService { + DmIntentResponse doRegularMatch(String content); +} diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmIntentServiceImpl.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmIntentServiceImpl.java index 38c7ba34..47d4d3ff 100644 --- a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmIntentServiceImpl.java +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmIntentServiceImpl.java @@ -1,12 +1,242 @@ package com.xueyi.nlt.nlt.service.impl; +import com.alibaba.fastjson2.JSONObject; +import com.baomidou.mybatisplus.core.toolkit.StringUtils; +import com.xueyi.common.cache.utils.SourceUtil; +import com.xueyi.common.core.constant.basic.SecurityConstants; +import com.xueyi.common.core.constant.digitalman.MessageConstants; +import com.xueyi.common.core.constant.digitalman.SkillConstants; +import com.xueyi.common.core.utils.core.IdUtil; +import com.xueyi.common.core.web.result.R; import com.xueyi.common.web.entity.service.impl.BaseServiceImpl; +import com.xueyi.nlt.api.nlt.domain.vo.DmIntentVo; +import com.xueyi.nlt.api.nlt.domain.vo.KnowledgeVo; +import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; +import com.xueyi.nlt.api.nlt.domain.vo.response.DmKnowledgeResponse; +import com.xueyi.nlt.api.nlt.feign.RemoteQAService; import com.xueyi.nlt.nlt.domain.dto.DmIntentDto; import com.xueyi.nlt.nlt.domain.query.DmIntentQuery; +import com.xueyi.nlt.nlt.domain.vo.MarkRecordVo; import com.xueyi.nlt.nlt.manager.IDmIntentManager; +import com.xueyi.nlt.nlt.manager.impl.DmRegularManager; import com.xueyi.nlt.nlt.service.IDmIntentService; +import com.xueyi.nlt.nlt.template.DeliveryOrderTemplate; +import com.xueyi.nlt.nlt.template.FlightMessageTemplate; +import com.xueyi.nlt.nlt.template.FreeChatTemplate; +import com.xueyi.nlt.nlt.template.MeetingOrderTemplate; +import com.xueyi.system.api.digitalmans.domain.dto.DmManDeviceDto; +import com.xueyi.system.api.digitalmans.domain.dto.DmSkillDto; +import com.xueyi.system.api.digitalmans.feign.RemoteManDeviceService; +import com.xueyi.system.api.digitalmans.feign.RemoteSkillService; +import com.xueyi.system.api.model.Source; +import com.xueyi.system.api.organize.domain.dto.SysEnterpriseDto; +import com.xueyi.system.api.organize.feign.RemoteEnterpriseService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.data.redis.core.StringRedisTemplate; import org.springframework.stereotype.Service; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + @Service public class DmIntentServiceImpl extends BaseServiceImpl implements IDmIntentService { + private static final Logger log = LoggerFactory.getLogger(DmIntentServiceImpl.class); + + @Autowired + RemoteEnterpriseService remoteEnterpriseService; + + @Autowired + private DmRegularManager regularManager; + + + @Autowired + private RemoteManDeviceService manDeviceService; + + @Autowired + private RemoteQAService remoteQAService; + + @Autowired + private StringRedisTemplate redisTemplate; + + @Autowired + private RedisTemplate redisTemplate2; + + @Autowired + private MeetingOrderTemplate meetingOrderTemplate; + + @Autowired + private DeliveryOrderTemplate deliveryOrderTemplate; + + @Autowired + private FreeChatTemplate freeChatTemplate; + + @Autowired + private RemoteSkillService remoteskillService; + + @Autowired + private FlightMessageTemplate flightMessageTemplate; + + @Override + public DmIntentResponse conversation(DmIntentVo intent) { + MarkRecordVo recordVo = new MarkRecordVo(); + recordVo.setDevId(intent.getDevId()); + recordVo.setId(IdUtil.getSnowflakeNextId()); + recordVo.setCreateTime(LocalDateTime.now()); + recordVo.setQuestion(intent.getContent()); + recordVo.setHit(1); + + R manDeviceDtoR = manDeviceService.manDeviceInfoInner(intent.getDevId()); + String enterpriseId = manDeviceDtoR.getData().getTId().toString(); + String enterpriseName = ""; + R enterpriseDtoR = remoteEnterpriseService.getInfo(Long.valueOf(enterpriseId)); + Source source = SourceUtil.getSourceCache(enterpriseDtoR.getData().getStrategyId()); + if (enterpriseDtoR.isOk()) { + enterpriseName = enterpriseDtoR.getData().getName(); + } + + // 正则技能匹配 + DmIntentResponse response = regularManager.doRegularMatch(intent.getContent()); + if (response != null && StringUtils.isNotEmpty(response.getSkillCode())){ + sendToDashboard(intent, enterpriseName); + + // 判断是否有权限 + R> skilllistInner = remoteskillService.skilllistInner(intent.getDevId(),"1",Long.parseLong(enterpriseId), source.getMaster(), SecurityConstants.INNER); + if(skilllistInner.isOk()){ + List skilllist=skilllistInner.getData(); + for (DmSkillDto dmSkillDto : skilllist) { + if (dmSkillDto.getSkillCode().equals(response.getSkillCode())) { + if(dmSkillDto.getStatus().equals("0")){ + response.clear(); + response.setMsg("操作无权限"); + return response; + } + // 为技能设置motion + response.setMotion(dmSkillDto.getMotionName()); + } + } + } + switch (response.getSkillCode()) { + case "1": + // 做会议室处理 + response.setH5(meetingOrderTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); + break; + case "33": + // 做快递预约处理 + response.setH5(deliveryOrderTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); + break; + case "34": + // 做查询航班信息处理 + response.setH5(flightMessageTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); + break; + default: + break; + } + } + else if(response != null && StringUtils.isNotEmpty(response.getMsg())){ + // 记录log + recordVo.setType(2); + List answers = new ArrayList(); + answers.add(response.getMsg()); + recordVo.setAnswers(answers); + return response; + } + else{ + // 调用知识库问答 + response.setSkillCode("30"); + DmKnowledgeResponse qaAjax = null; + KnowledgeVo knowledgeVo = new KnowledgeVo(); + knowledgeVo.setManCode(manDeviceDtoR.getData().getManCode()); + knowledgeVo.setTenantId(manDeviceDtoR.getData().getTId()); + knowledgeVo.setQuestion(intent.getContent()); + R dmKnowledgeResponseR = remoteQAService.query(knowledgeVo); + if (dmKnowledgeResponseR!= null && dmKnowledgeResponseR.getData() != null) { + qaAjax = dmKnowledgeResponseR.getData(); + } + + String content = ""; + if (qaAjax != null) { + log.info("知识库问答返回结果:{}",qaAjax.toString()); + if (qaAjax.getTarget() == 1) { + content = qaAjax.getResult().get(0).getKnowledgeLib(); + pushIntoDashboardRedis(enterpriseName,content,"knowledge"); + response.setH5(JSONObject.from(qaAjax)); + // 记录log + recordVo.setType(2); + List answers = new ArrayList(); + answers.add(response.getMsg()); + recordVo.setAnswers(answers); // 航班查询 + return response; + } + else { + // 知识库没有答案,返回空 + response.clear(); + response.setMsg(""); + } + } + } + + if(StringUtils.isEmpty(response.getSkillCode()) && intent.getMode().equals(MessageConstants.MODE_FREE_CHAT)) { + JSONObject joResult = freeChatTemplate.handle(intent.getDevId(),intent.getContent()); + response.setH5(joResult); + } + + return response; + } + + + private int pushIntoDashboardRedis(String name,String content,String type) { + try { + JSONObject object = new JSONObject(); + object.put("tenantName", name); + object.put("content", content); + if (type.equals("skill")) { + redisTemplate2.opsForList().leftPush("dashboard:skill-consume", object.toJSONString()); + } else if (type.equals("knowledge")) { + redisTemplate2.opsForList().leftPush("dashboard:knowledge-consume", object.toJSONString()); + } + return 1; + } catch (Exception e) { + log.error("推送到仪表盘失败:{}",e.getMessage()); + return 0; + } + } + + private void sendToDashboard(DmIntentVo intent, String enterpriseName) { + if (SkillConstants.SkillType.BOOK_MEETING_ROOM.getCode().equals(intent.getSkillCode()) ) { + if (!redisTemplate2.hasKey("group:device" + ":" + intent.getDevId() + ":" +"session")) { + // 获取名称为"meeting-order"的BaseTemplate的实例 + redisTemplate.opsForValue().increment("dashboard:meeting", 1); + pushIntoDashboardRedis(enterpriseName, "会议室预定", "skill"); + } + } else if (SkillConstants.SkillType.CREATE_VISITOR_INFO.getCode().equals(intent.getSkillCode())) { + // 访客预定 + redisTemplate.opsForValue().increment("dashboard:create_visitor_info", 1); + pushIntoDashboardRedis(enterpriseName,"访客邀约","skill"); + } else if (SkillConstants.SkillType.REGISTER_VISITOR.getCode().equals(intent.getSkillCode())) { + // 访客登记 + redisTemplate.opsForValue().increment("dashboard:register_visitor", 1); + pushIntoDashboardRedis(enterpriseName,"陌生人登记","skill"); + } else if (SkillConstants.SkillType.BROADCAST_DISPLAY.getCode().equals(intent.getSkillCode())) { + // 播报展示 + redisTemplate.opsForValue().increment("dashboard:broadcast_display", 1); + pushIntoDashboardRedis(enterpriseName,"播报展示","skill"); + } else if (SkillConstants.SkillType.OPEN_DOOR.getCode().equals(intent.getSkillCode())) { + // 开门记录 + redisTemplate.opsForValue().increment("dashboard:open_door", 1); + pushIntoDashboardRedis(enterpriseName,"开门","skill"); + }else if (SkillConstants.SkillType.DELIVERY.getCode().equals(intent.getSkillCode()) ) { + if (!redisTemplate2.hasKey("group:device" + ":" + intent.getDevId() + ":" + "session")) { + // 获取名称为"meeting-order"的BaseTemplate的实例 + redisTemplate.opsForValue().increment("dashboard:delivery", 1); + pushIntoDashboardRedis(enterpriseName, "寄快递", "skill"); + } + }else if (SkillConstants.SkillType.FLIGHT.getCode().equals(intent.getSkillCode()) ) { + redisTemplate.opsForValue().increment("dashboard:flight", 1); + pushIntoDashboardRedis(enterpriseName, "查询航班信息", "skill"); + } + } } diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmNltServiceImpl.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmNltServiceImpl.java index 76933410..15e285b4 100644 --- a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmNltServiceImpl.java +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmNltServiceImpl.java @@ -41,200 +41,8 @@ import java.util.List; @Service public class DmNltServiceImpl implements IDmNltService { - - private static final Logger log = LoggerFactory.getLogger(DmNltServiceImpl.class); - - @Autowired - RemoteEnterpriseService remoteEnterpriseService; - - @Autowired - private DmRegularManager regularManager; - - - @Autowired - private RemoteManDeviceService manDeviceService; - - @Autowired - private RemoteQAService remoteQAService; - - @Autowired - private StringRedisTemplate redisTemplate; - - @Autowired - private RedisTemplate redisTemplate2; - - @Autowired - private MeetingOrderTemplate meetingOrderTemplate; - - @Autowired - private DeliveryOrderTemplate deliveryOrderTemplate; - - @Autowired - private FreeChatTemplate freeChatTemplate; - - @Autowired - private RemoteSkillService remoteskillService; - - @Autowired - private FlightMessageTemplate flightMessageTemplate; - @Override public R conversation(DmIntentVo intent) { - MarkRecordVo recordVo = new MarkRecordVo(); - recordVo.setDevId(intent.getDevId()); - recordVo.setId(IdUtil.getSnowflakeNextId()); - recordVo.setCreateTime(LocalDateTime.now()); - recordVo.setQuestion(intent.getContent()); - recordVo.setHit(1); - - R manDeviceDtoR = manDeviceService.manDeviceInfoInner(intent.getDevId()); - String enterpriseId = manDeviceDtoR.getData().getTId().toString(); - String enterpriseName = ""; - R enterpriseDtoR = remoteEnterpriseService.getInfo(Long.valueOf(enterpriseId)); - Source source = SourceUtil.getSourceCache(enterpriseDtoR.getData().getStrategyId()); - if (enterpriseDtoR.isOk()) { - enterpriseName = enterpriseDtoR.getData().getName(); - } - - // 正则技能匹配 - DmIntentResponse response = regularManager.doRegularMatch(intent); - if (response != null && StringUtils.isNotEmpty(response.getSkillCode())){ - sendToDashboard(intent, enterpriseName); - - // 判断是否有权限 - R> skilllistInner = remoteskillService.skilllistInner(intent.getDevId(),"1",Long.parseLong(enterpriseId), source.getMaster(), SecurityConstants.INNER); - if(skilllistInner.isOk()){ - List skilllist=skilllistInner.getData(); - for (DmSkillDto dmSkillDto : skilllist) { - if (dmSkillDto.getSkillCode().equals(response.getSkillCode())) { - if(dmSkillDto.getStatus().equals("0")){ - response.clear(); - response.setMsg("操作无权限"); - return R.ok(response); - } - // 为技能设置motion - response.setMotion(dmSkillDto.getMotionName()); - } - } - } - switch (response.getSkillCode()) { - case "1": - // 做会议室处理 - response.setH5(meetingOrderTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); - break; - case "33": - // 做快递预约处理 - response.setH5(deliveryOrderTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); - break; - case "34": - // 做查询航班信息处理 - response.setH5(flightMessageTemplate.handle(intent.getDevId(), intent.getContent(), Long.valueOf(enterpriseId))); - break; - default: - break; - } - } - else if(response != null && StringUtils.isNotEmpty(response.getMsg())){ - // 记录log - recordVo.setType(2); - List answers = new ArrayList(); - answers.add(response.getMsg()); - recordVo.setAnswers(answers); - return R.ok(response); - } - else{ - // 调用知识库问答 - response.setSkillCode("30"); - DmKnowledgeResponse qaAjax = null; - KnowledgeVo knowledgeVo = new KnowledgeVo(); - knowledgeVo.setManCode(manDeviceDtoR.getData().getManCode()); - knowledgeVo.setTenantId(manDeviceDtoR.getData().getTId()); - knowledgeVo.setQuestion(intent.getContent()); - R dmKnowledgeResponseR = remoteQAService.query(knowledgeVo); - if (dmKnowledgeResponseR!= null && dmKnowledgeResponseR.getData() != null) { - qaAjax = dmKnowledgeResponseR.getData(); - } - - String content = ""; - if (qaAjax != null) { - log.info("知识库问答返回结果:{}",qaAjax.toString()); - if (qaAjax.getTarget() == 1) { - content = qaAjax.getResult().get(0).getKnowledgeLib(); - pushIntoDashboardRedis(enterpriseName,content,"knowledge"); - response.setH5(JSONObject.from(qaAjax)); - // 记录log - recordVo.setType(2); - List answers = new ArrayList(); - answers.add(response.getMsg()); - recordVo.setAnswers(answers); // 航班查询 - return R.ok(response); - } - else { - // 知识库没有答案,返回空 - response.clear(); - response.setMsg(""); - } - } - } - - if(StringUtils.isEmpty(response.getSkillCode()) && intent.getMode().equals(MessageConstants.MODE_FREE_CHAT)) { - JSONObject joResult = freeChatTemplate.handle(intent.getDevId(),intent.getContent()); - response.setH5(joResult); - } - - return R.ok(response); - } - - - private int pushIntoDashboardRedis(String name,String content,String type) { - try { - JSONObject object = new JSONObject(); - object.put("tenantName", name); - object.put("content", content); - if (type.equals("skill")) { - redisTemplate2.opsForList().leftPush("dashboard:skill-consume", object.toJSONString()); - } else if (type.equals("knowledge")) { - redisTemplate2.opsForList().leftPush("dashboard:knowledge-consume", object.toJSONString()); - } - return 1; - } catch (Exception e) { - log.error("推送到仪表盘失败:{}",e.getMessage()); - return 0; - } - } - - private void sendToDashboard(DmIntentVo intent, String enterpriseName) { - if (SkillConstants.SkillType.BOOK_MEETING_ROOM.getCode().equals(intent.getSkillCode()) ) { - if (!redisTemplate2.hasKey("group:device" + ":" + intent.getDevId() + ":" +"session")) { - // 获取名称为"meeting-order"的BaseTemplate的实例 - redisTemplate.opsForValue().increment("dashboard:meeting", 1); - pushIntoDashboardRedis(enterpriseName, "会议室预定", "skill"); - } - } else if (SkillConstants.SkillType.CREATE_VISITOR_INFO.getCode().equals(intent.getSkillCode())) { - // 访客预定 - redisTemplate.opsForValue().increment("dashboard:create_visitor_info", 1); - pushIntoDashboardRedis(enterpriseName,"访客邀约","skill"); - } else if (SkillConstants.SkillType.REGISTER_VISITOR.getCode().equals(intent.getSkillCode())) { - // 访客登记 - redisTemplate.opsForValue().increment("dashboard:register_visitor", 1); - pushIntoDashboardRedis(enterpriseName,"陌生人登记","skill"); - } else if (SkillConstants.SkillType.BROADCAST_DISPLAY.getCode().equals(intent.getSkillCode())) { - // 播报展示 - redisTemplate.opsForValue().increment("dashboard:broadcast_display", 1); - pushIntoDashboardRedis(enterpriseName,"播报展示","skill"); - } else if (SkillConstants.SkillType.OPEN_DOOR.getCode().equals(intent.getSkillCode())) { - // 开门记录 - redisTemplate.opsForValue().increment("dashboard:open_door", 1); - pushIntoDashboardRedis(enterpriseName,"开门","skill"); - }else if (SkillConstants.SkillType.DELIVERY.getCode().equals(intent.getSkillCode()) ) { - if (!redisTemplate2.hasKey("group:device" + ":" + intent.getDevId() + ":" + "session")) { - // 获取名称为"meeting-order"的BaseTemplate的实例 - redisTemplate.opsForValue().increment("dashboard:delivery", 1); - pushIntoDashboardRedis(enterpriseName, "寄快递", "skill"); - } - }else if (SkillConstants.SkillType.FLIGHT.getCode().equals(intent.getSkillCode()) ) { - redisTemplate.opsForValue().increment("dashboard:flight", 1); - pushIntoDashboardRedis(enterpriseName, "查询航班信息", "skill"); - } + return null; } } diff --git a/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmRegularServiceImpl.java b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmRegularServiceImpl.java new file mode 100644 index 00000000..0a611634 --- /dev/null +++ b/xueyi-modules/xueyi-nlt/src/main/java/com/xueyi/nlt/nlt/service/impl/DmRegularServiceImpl.java @@ -0,0 +1,17 @@ +package com.xueyi.nlt.nlt.service.impl; + +import com.xueyi.common.web.entity.service.impl.BaseServiceImpl; +import com.xueyi.nlt.api.nlt.domain.vo.DmIntentVo; +import com.xueyi.nlt.api.nlt.domain.vo.response.DmIntentResponse; +import com.xueyi.nlt.nlt.domain.query.DmRegularQuery; +import com.xueyi.nlt.nlt.domain.dto.DmRegularDto; +import com.xueyi.nlt.nlt.manager.IDmRegularManager; +import com.xueyi.nlt.nlt.service.IDmRegularService; + +public class DmRegularServiceImpl extends BaseServiceImpl implements IDmRegularService { + + @Override + public DmIntentResponse doRegularMatch(String content) { + return baseManager.doRegularMatch(content); + } +}