From 335d1e04fdc907aa5253fa583dd39f06cb84d5b1 Mon Sep 17 00:00:00 2001 From: limingyu Date: Tue, 5 Dec 2023 13:45:52 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B9=E5=A6=83=E7=94=B8=E5=8A=A8=E7=81=AB?= =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E6=90=AC=E5=88=B0=E6=B8=AF=E5=8A=A1=E5=B1=80?= =?UTF-8?q?3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppHotWorkApplicationController.java | 2 +- .../controller/mq/EightWorkListener.java | 92 +++++++++++++++++++ .../com/zcloud/controller/mq/MqListener.java | 32 +++++++ .../zcloud/controller/mq/SendController.java | 51 ++++++++++ .../AppPersonnelManagementCfdController.java | 10 +- .../datasource/bus/SpecialUserMapper.java | 2 + .../service/bus/SpecialUserService.java | 1 + .../bus/impl/SpecialUserServiceImpl.java | 5 + src/main/java/com/zcloud/util/mq/MqUtil.java | 2 +- src/main/resources/application-dev.properties | 19 ++++ src/main/resources/application.properties | 4 +- .../datasource/bus/SpecialUserMapper.xml | 18 ++++ .../PersonnelManagementMapper.xml | 6 +- 13 files changed, 234 insertions(+), 10 deletions(-) create mode 100644 src/main/java/com/zcloud/controller/mq/EightWorkListener.java create mode 100644 src/main/java/com/zcloud/controller/mq/MqListener.java create mode 100644 src/main/java/com/zcloud/controller/mq/SendController.java diff --git a/src/main/java/com/zcloud/controller/app/highriskwork/AppHotWorkApplicationController.java b/src/main/java/com/zcloud/controller/app/highriskwork/AppHotWorkApplicationController.java index 3f88b6e5..f10a74f8 100644 --- a/src/main/java/com/zcloud/controller/app/highriskwork/AppHotWorkApplicationController.java +++ b/src/main/java/com/zcloud/controller/app/highriskwork/AppHotWorkApplicationController.java @@ -859,7 +859,7 @@ public class AppHotWorkApplicationController extends BaseController { } String ffile = DateUtil.getDays(); String fileName = this.get32UUID()+file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf(".")); - Smb.sshSftp(file, fileName, Const.FILEPATHYHTP + pd.get("CORPINFO_ID").toString() + "/" + ffile); +// Smb.sshSftp(file, fileName, Const.FILEPATHYHTP + pd.get("CORPINFO_ID").toString() + "/" + ffile); hotUser.put("AUTOGRAPH",Const.FILEPATHYHTP + pd.get("CORPINFO_ID").toString() + "/" + ffile + "/" + fileName); } diff --git a/src/main/java/com/zcloud/controller/mq/EightWorkListener.java b/src/main/java/com/zcloud/controller/mq/EightWorkListener.java new file mode 100644 index 00000000..cd792061 --- /dev/null +++ b/src/main/java/com/zcloud/controller/mq/EightWorkListener.java @@ -0,0 +1,92 @@ +package com.zcloud.controller.mq; + +import com.alibaba.fastjson.JSON; +import com.zcloud.controller.app.highriskwork.AppHotworkCfdController; +import com.zcloud.dto.TenCorpDto; +import com.zcloud.entity.PageData; +import com.zcloud.mapper.datasource.mq.MqMessageLogMapper; +import com.zcloud.service.mq.LogService; +import com.zcloud.service.mq.SendMessageService; +import com.zcloud.util.DateUtil; +import com.zcloud.util.Warden; +import com.zcloud.util.mq.MqUtil; +import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; +import org.apache.rocketmq.spring.annotation.SelectorType; +import org.apache.rocketmq.spring.core.RocketMQListener; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; +import java.util.Date; + +/** + * 说明:消费某个 topic 下指定 tag 的消息 对接课件DEMO + * 作者:wangxuan + * 官网:www.zcloudchina.com + */ +@Component +@RocketMQMessageListener(consumerGroup = "${mq.group.eightWork}", + topic = "${mq.topic.eightWork}", + selectorType = SelectorType.TAG) +public class EightWorkListener implements RocketMQListener { + + +// @Resource +// private AppConfinedSpaceController appConfinedSpaceController; +// @Resource +// private AppElectricityController appElectricityController; + @Resource + private AppHotworkCfdController appHotworkCfdController; + + @Resource + private SendMessageService sendMessageService; + + @Resource + private LogService logService; + + @Resource + private MqMessageLogMapper mqMessageLogMapper; + + @Override + public void onMessage(String message) { + TenCorpDto data = JSON.parseObject(message, TenCorpDto.class); + PageData log = data.getPd(); + log.put("MESSAGE_LOG_ID", Warden.get32UUID()); + log.put("CREATE_TIME", DateUtil.getTime()); + log.put("PRODUCER_NAME",data.getProducer_name()); + log.put("TYPE","1"); + try { + System.out.println("消费者:" + data.toString()); + Date limit_date = MqUtil.dateFormat(data.getTime_stamp()); + if (limit_date.getTime() - new Date().getTime() > 1000) { + sendMessageService.SendDelayQueue(data); + log.put("DIGESTION_FLAG","0"); + } else { + switch (data.getMessage()){ + case "confined-space": + System.out.println("受限空间模块消费"); +// appConfinedSpaceController.cancel(data.getData()); + break; + case "electricity": + System.out.println("临时用电模块消费"); +// appElectricityController.cancel(data.getData()); + break; + case "hot-work": + System.out.println("动火模块消费"); + appHotworkCfdController.cancel(data.getData()); + break; + default: + System.out.println("异常模块不消费"); + throw new RuntimeException("未找到对应的消费者"); + } + log.put("DIGESTION_FLAG","1"); + } + mqMessageLogMapper.save(log); + } catch (Exception e) { + e.printStackTrace(); + logService.saveErrorMessage(log,e.getMessage()); + throw new RuntimeException(e); + } + } + +} + diff --git a/src/main/java/com/zcloud/controller/mq/MqListener.java b/src/main/java/com/zcloud/controller/mq/MqListener.java new file mode 100644 index 00000000..b34984e7 --- /dev/null +++ b/src/main/java/com/zcloud/controller/mq/MqListener.java @@ -0,0 +1,32 @@ +package com.zcloud.controller.mq; + +import com.alibaba.fastjson.JSON; +import com.zcloud.dto.TenCorpDto; +import org.apache.rocketmq.spring.annotation.RocketMQMessageListener; +import org.apache.rocketmq.spring.annotation.SelectorType; +import org.apache.rocketmq.spring.core.RocketMQListener; +import org.springframework.stereotype.Component; + +/** + * 说明:消费某个 topic 下指定 tag 的消息 对接课件DEMO + * 作者:wangxuan + * 官网:www.zcloudchina.com + */ +@Component +@RocketMQMessageListener(consumerGroup = "${mq.group.info}", + topic = "${mq.topic.info}", + selectorType = SelectorType.TAG) +public class MqListener implements RocketMQListener { + + @Override + public void onMessage(String message) { + TenCorpDto data = JSON.parseObject(message, TenCorpDto.class); + try { + System.out.println("2消费者:" + data.toString()); + } catch (Exception e) { + e.printStackTrace(); + throw new RuntimeException(e); + } + } +} + diff --git a/src/main/java/com/zcloud/controller/mq/SendController.java b/src/main/java/com/zcloud/controller/mq/SendController.java new file mode 100644 index 00000000..649331ff --- /dev/null +++ b/src/main/java/com/zcloud/controller/mq/SendController.java @@ -0,0 +1,51 @@ +package com.zcloud.controller.mq; + +import com.zcloud.controller.base.BaseController; +import com.zcloud.dto.Response; +import com.zcloud.dto.TenCorpDto; +import com.zcloud.service.mq.SendMessageService; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +import javax.annotation.Resource; + +/** + * 说明: + * 作者:wangxuan + * 官网:www.zcloudchina.com + */ +public class SendController extends BaseController { + + @Resource + private SendMessageService sendMessageService; + + + public Response sendMessage(@RequestParam("tenCorpDto") TenCorpDto tenCorpDto) throws Exception { + try { + sendMessageService.sendMessage(tenCorpDto); + } catch (Exception e) { + e.printStackTrace(); + } + return Response.OK(); + } + + public Response timelyQueue(@RequestBody TenCorpDto tenCorpDto) throws Exception { + try { + sendMessageService.sendMessage(tenCorpDto); + } catch (Exception e) { + e.printStackTrace(); + } + return Response.OK(); + } + + public Response SendDelayQueue(@RequestBody TenCorpDto tenCorpDto) throws Exception { + try { + sendMessageService.SendDelayQueue(tenCorpDto); + return Response.OK(); + } catch (Exception e) { + e.printStackTrace(); + return Response.ERROR(e.getMessage()); + } + + } +} diff --git a/src/main/java/com/zcloud/controller/specialoperation/AppPersonnelManagementCfdController.java b/src/main/java/com/zcloud/controller/specialoperation/AppPersonnelManagementCfdController.java index 29cf2e72..efec0f69 100644 --- a/src/main/java/com/zcloud/controller/specialoperation/AppPersonnelManagementCfdController.java +++ b/src/main/java/com/zcloud/controller/specialoperation/AppPersonnelManagementCfdController.java @@ -4,6 +4,7 @@ import com.zcloud.controller.base.BaseController; import com.zcloud.entity.Page; import com.zcloud.entity.PageData; import com.zcloud.logs.LogAnno; +import com.zcloud.service.bus.SpecialUserService; import com.zcloud.service.specialoperation.PersonnelManagementCfdService; import com.zcloud.util.DateUtil; import com.zcloud.util.Jurisdiction; @@ -29,6 +30,8 @@ public class AppPersonnelManagementCfdController extends BaseController { @Autowired private PersonnelManagementCfdService personnelmanagementCfdService; + @Autowired + private SpecialUserService specialUserService; /**新增 * @param @@ -100,9 +103,10 @@ public class AppPersonnelManagementCfdController extends BaseController { String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); - pd.put("CORPINFO_ID", pd.get("CORPINFO_ID")); //企业ID - page.setPd(pd); - List varList = personnelmanagementCfdService.namelist(pd); //列出PersonnelManagement列表 + String endday = DateUtil.getDay(); + PageData getPD = new PageData(); + getPD.put("endday",endday); + List varList = specialUserService.nameListAll(getPD); map.put("varList", varList); map.put("page", page); map.put("result", errInfo); diff --git a/src/main/java/com/zcloud/mapper/datasource/bus/SpecialUserMapper.java b/src/main/java/com/zcloud/mapper/datasource/bus/SpecialUserMapper.java index 5b97d670..39a683be 100644 --- a/src/main/java/com/zcloud/mapper/datasource/bus/SpecialUserMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/bus/SpecialUserMapper.java @@ -66,5 +66,7 @@ public interface SpecialUserMapper{ * @throws Exception */ void deleteTem(PageData pd); + + List nameListAll(PageData getPD); } diff --git a/src/main/java/com/zcloud/service/bus/SpecialUserService.java b/src/main/java/com/zcloud/service/bus/SpecialUserService.java index 57e9fd28..25821548 100644 --- a/src/main/java/com/zcloud/service/bus/SpecialUserService.java +++ b/src/main/java/com/zcloud/service/bus/SpecialUserService.java @@ -68,5 +68,6 @@ public interface SpecialUserService{ */ public void deleteTem(PageData pd)throws Exception; + List nameListAll(PageData getPD)throws Exception; } diff --git a/src/main/java/com/zcloud/service/bus/impl/SpecialUserServiceImpl.java b/src/main/java/com/zcloud/service/bus/impl/SpecialUserServiceImpl.java index ac7a1470..4de404bd 100644 --- a/src/main/java/com/zcloud/service/bus/impl/SpecialUserServiceImpl.java +++ b/src/main/java/com/zcloud/service/bus/impl/SpecialUserServiceImpl.java @@ -94,5 +94,10 @@ public class SpecialUserServiceImpl implements SpecialUserService{ public void deleteTem(PageData pd)throws Exception{ specialuserMapper.deleteTem(pd); } + + @Override + public List nameListAll(PageData getPD) throws Exception { + return specialuserMapper.nameListAll(getPD); + } } diff --git a/src/main/java/com/zcloud/util/mq/MqUtil.java b/src/main/java/com/zcloud/util/mq/MqUtil.java index f9595a5d..aa448009 100644 --- a/src/main/java/com/zcloud/util/mq/MqUtil.java +++ b/src/main/java/com/zcloud/util/mq/MqUtil.java @@ -16,7 +16,7 @@ public class MqUtil { if (time_difference < 0){ return 0; } - if (time_difference > 2*60*60*1000){ + if (time_difference > 2 * 60 * 60 * 1000){ return 18; } if (time_difference > 60 * 60 * 1000){ diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index 5bb49ecc..4d9aabe4 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -69,3 +69,22 @@ smb.port=22 smb.user=root smb.password=Zcloud@zcloud88888 smb.basePath=/mnt/qgfile/file/ + +#Mq\u914D\u7F6E +rocketmq.consumer.group2=edu-admin-edit +rocketmq.consumer.group1=edu-admin-add +#rocketmq.name-server=10.0.140.141:9876 +rocketmq.name-server=192.168.0.70:9876 +rocketmq.producer.group=libmiddle +rocketmq.producer.send-message-timeout=3000 +rocketmq.producer.compress-message-body-threshold=4096 +rocketmq.producer.max-message-size=4194304 +rocketmq.producer.retry-times-when-send-failed=3 +rocketmq.producer.retry-next-server=true +rocketmq.producer.retry-times-when-send-async-failed=3 +## topic \u524D\u7F00 + +mq.topic.info=info +mq.topic.eightWork=eightWork +mq.group.info=scheduled_tasks +mq.group.eightWork=scheduled_tasks_eightWork diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index 9f55743c..ba2e4031 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -2,9 +2,9 @@ spring.application.name=qa-prevention-gwj server.port=8091 #?? -spring.profiles.active=local +#spring.profiles.active=local #?? -#spring.profiles.active=dev +spring.profiles.active=dev #?? #spring.profiles.active=master diff --git a/src/main/resources/mybatis/datasource/bus/SpecialUserMapper.xml b/src/main/resources/mybatis/datasource/bus/SpecialUserMapper.xml index bd292615..b7dadf55 100644 --- a/src/main/resources/mybatis/datasource/bus/SpecialUserMapper.xml +++ b/src/main/resources/mybatis/datasource/bus/SpecialUserMapper.xml @@ -251,6 +251,24 @@ and f.SPECIAL_NUMBER = #{SPECIAL_NUMBER} + + + delete from diff --git a/src/main/resources/mybatis/datasource/specialoperation/PersonnelManagementMapper.xml b/src/main/resources/mybatis/datasource/specialoperation/PersonnelManagementMapper.xml index fe769ec9..23c4ba79 100644 --- a/src/main/resources/mybatis/datasource/specialoperation/PersonnelManagementMapper.xml +++ b/src/main/resources/mybatis/datasource/specialoperation/PersonnelManagementMapper.xml @@ -4,7 +4,7 @@ - BUS_PERSONNELMANAGEMENT + BUS_PERSONNELMANAGEMENT_CFD @@ -158,7 +158,7 @@ f left join sys_dictionaries a on a.DICTIONARIES_ID = f.JOB_TYPE left join bus_corp_info b on b.CORPINFO_ID = f.CORPINFO_ID - left join `qa-cfd-regulatory`.bus_units r on r.UNITS_ID = f.UNITS_ID + left join `qa-gwj-regulatory`.bus_units r on r.UNITS_ID = f.UNITS_ID where f.ISDELETE = '0' and @@ -201,7 +201,7 @@ left join sys_dictionaries a on a.DICTIONARIES_ID = f.JOB_TYPE left join bus_corp_info b on b.CORPINFO_ID = f.CORPINFO_ID - left join bus_units r on r.UNITS_ID = f.UNITS_ID + left join bus_units_cfd r on r.UNITS_ID = f.UNITS_ID where f.ISDELETE = '0' and f.CORPINFO_ID = #{CORPINFO_ID}