|
|
@@ -1,125 +0,0 @@
|
|
|
-package org.dromara.backstage.mq;
|
|
|
-
|
|
|
-import cn.hutool.core.date.DateUtil;
|
|
|
-import cn.hutool.http.HttpRequest;
|
|
|
-import cn.hutool.http.HttpResponse;
|
|
|
-import cn.hutool.json.JSONObject;
|
|
|
-import cn.hutool.json.JSONUtil;
|
|
|
-import lombok.RequiredArgsConstructor;
|
|
|
-import lombok.extern.slf4j.Slf4j;
|
|
|
-import org.apache.kafka.clients.consumer.ConsumerRecord;
|
|
|
-import org.dromara.backstage.business.consume.strategy.Impl.ConsumeStrategyContent;
|
|
|
-import org.dromara.backstage.consumption.domain.bo.ConsumeRecordBo;
|
|
|
-import org.dromara.backstage.consumption.domain.bo.ConsumptionBo;
|
|
|
-import org.dromara.backstage.consumption.domain.vo.XfConsumeDetailOriginalVo;
|
|
|
-import org.dromara.common.core.domain.R;
|
|
|
-import org.dromara.common.core.enums.CreditTypeEnum;
|
|
|
-import org.springframework.kafka.annotation.KafkaListener;
|
|
|
-import org.dromara.common.message.kafka.domain.KafkaMessage;
|
|
|
-import org.springframework.stereotype.Component;
|
|
|
-
|
|
|
-import java.math.BigDecimal;
|
|
|
-import java.util.HashMap;
|
|
|
-
|
|
|
-/**
|
|
|
- * name: KafkaNormalConsumer
|
|
|
- * package: org.dromara.backstage.mq
|
|
|
- * description:
|
|
|
- * date: 2024-10-15 15:33:41 15:33
|
|
|
- *
|
|
|
- * @author luoyibo
|
|
|
- * @version 0.1
|
|
|
- * @since JDK 1.8
|
|
|
- */
|
|
|
-@RequiredArgsConstructor
|
|
|
-@Slf4j
|
|
|
-//@Component
|
|
|
-public class KafkaNormalConsumer {
|
|
|
- private final ConsumeStrategyContent consumeStrategyContent;
|
|
|
-
|
|
|
- @KafkaListener(topics = "eventBus", groupId = "test-group-id")
|
|
|
- public void timiKafka(ConsumerRecord<String, String> record) {
|
|
|
- Object key = record.key();
|
|
|
- Object value = record.value();
|
|
|
- KafkaMessage<?> kmsg = JSONUtil.toBean(record.value(), KafkaMessage.class);
|
|
|
- if(kmsg.getHeader().getEventType().equals("00500001")){
|
|
|
- JSONObject data = JSONUtil.parseObj(kmsg.getBody());
|
|
|
- try {
|
|
|
- //uploadByHttp(data);
|
|
|
-
|
|
|
- uploadByService(data);
|
|
|
-
|
|
|
- //uploadtest();
|
|
|
- } catch (Exception e) {
|
|
|
- log.error("消费记录处理失败:", e);
|
|
|
- }
|
|
|
- }
|
|
|
- log.info("【消费者】received the message key {},value:{}", key, value);
|
|
|
- }
|
|
|
- private void uploadByService(JSONObject data) {
|
|
|
- ConsumptionBo recordBo = new ConsumptionBo();
|
|
|
- String time = data.get("consumeDate").toString();
|
|
|
- recordBo.setConsumeMoney(new BigDecimal(data.get("consumeValue").toString()));
|
|
|
- recordBo.setConsumeDate(DateUtil.parse(time));
|
|
|
- recordBo.setCardNo(Long.valueOf(data.get("cardNo").toString()));
|
|
|
- recordBo.setFactoryId(Long.valueOf(data.get("factoryFixId").toString()));
|
|
|
- recordBo.setTermNo(Long.valueOf( data.get("termNo").toString()));
|
|
|
- recordBo.setTermRecordId(Long.valueOf(data.get("termRecordID").toString()));
|
|
|
- recordBo.setRealName(data.get("xm").toString());
|
|
|
- recordBo.setUserNumb(data.get("userNumb").toString());
|
|
|
- recordBo.setRecordStatus(Long.valueOf(data.get("posRecordState").toString()));
|
|
|
- recordBo.setCreditType(CreditTypeEnum.TERM_CONSUME);
|
|
|
- recordBo.setTenantId("20200813044411");
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- R<Object> result = consumeStrategyContent.createOrder(recordBo);
|
|
|
- XfConsumeDetailOriginalVo vo = (XfConsumeDetailOriginalVo)result.getData();
|
|
|
-
|
|
|
- recordBo.setRecordId(vo.getRecordId());
|
|
|
- recordBo.setConsumeId(vo.getOriginalId());
|
|
|
- consumeStrategyContent.postOrder(recordBo);
|
|
|
- }
|
|
|
- private void uploadtest() {
|
|
|
- ConsumptionBo recordBo = new ConsumptionBo();
|
|
|
- recordBo.setConsumeMoney(BigDecimal.ZERO);
|
|
|
- recordBo.setConsumeDate(DateUtil.parse("2024-10-16 18:25:58"));
|
|
|
- recordBo.setCardNo(35193L);
|
|
|
- recordBo.setFactoryId(3656457030L);
|
|
|
- recordBo.setTermNo(7L);
|
|
|
- recordBo.setTermRecordId(46940L);
|
|
|
- recordBo.setRealName("苏兵");
|
|
|
- recordBo.setUserNumb("15674973790");
|
|
|
- recordBo.setRecordStatus(364L);
|
|
|
- recordBo.setCreditType(CreditTypeEnum.TERM_CONSUME);
|
|
|
- recordBo.setTenantId("20200813044411");
|
|
|
- R<Object> result = consumeStrategyContent.createOrder(recordBo);
|
|
|
- XfConsumeDetailOriginalVo vo = (XfConsumeDetailOriginalVo)result.getData();
|
|
|
-
|
|
|
- recordBo.setRecordId(vo.getRecordId());
|
|
|
- recordBo.setConsumeId(vo.getOriginalId());
|
|
|
- consumeStrategyContent.postOrder(recordBo);
|
|
|
- }
|
|
|
- private void uploadByHttp(JSONObject data) {
|
|
|
- ConsumeRecordBo recordBo = new ConsumeRecordBo();
|
|
|
- String time = data.get("consumeDate").toString();
|
|
|
- recordBo.setConsumeValue(new BigDecimal(data.get("consumeValue").toString()));
|
|
|
- recordBo.setConsumeDate(DateUtil.parse(time));
|
|
|
- recordBo.setCardID(Long.valueOf(data.get("cardNo").toString()));
|
|
|
- recordBo.setFactoryFixID(Long.valueOf(data.get("factoryFixId").toString()));
|
|
|
- recordBo.setTermID(Long.valueOf( data.get("termNo").toString()));
|
|
|
- recordBo.setTermRecordID(Long.valueOf(data.get("termRecordID").toString()));
|
|
|
- recordBo.setEmployeeName(data.get("xm").toString());
|
|
|
- recordBo.setEmployeeStrID(data.get("userNumb").toString());
|
|
|
- recordBo.setPosRecordState(Integer.valueOf(data.get("posRecordState").toString()));
|
|
|
-
|
|
|
- HashMap<String, String> headerMap = new HashMap<>();
|
|
|
- headerMap.put("clientId", "e5cd7e4891bf95d1d19206ce24a7b32e");
|
|
|
- headerMap.put("authorization","Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJsb2dpblR5cGUiOiJsb2dpbiIsImxvZ2luSWQiOiJzeXNfdXNlcjoxMDAiLCJyblN0ciI6IjlJRnhjczJOVWdWQTdnaEJBVzlPcTRtdG9ITGY4bDdKIiwiY2xpZW50aWQiOiJlNWNkN2U0ODkxYmY5NWQxZDE5MjA2Y2UyNGE3YjMyZSIsInRlbmFudElkIjoiMjAyMDA4MTMwNDQ0MTEiLCJ1c2VySWQiOjEwMCwidXNlck5hbWUiOiJhZG1pbiIsImRlcHRJZCI6MTAwLCJkZXB0TmFtZSI6IuS4reWFsea5luWNl-ecgeWnlOWFmuagoea5luWNl-ihjOaUv-WtpumZoiIsImRlcHRUeXBlIjoiMDEifQ.ZgNIYmAOYdjGyFG7TzjkJzdfK7zeuT1HWF0Bi68-CvQ");
|
|
|
- String url = "http://localhost:8001/dev-api/backstage/v1/Consumes/ConsumeOriginal";
|
|
|
- String bodyStr = bodyStr = JSONUtil.toJsonStr(recordBo);
|
|
|
- HttpResponse response = HttpRequest.post(url)
|
|
|
- .body(bodyStr)
|
|
|
- .addHeaders(headerMap).timeout(20000).execute();
|
|
|
- }
|
|
|
-}
|