From 49f98d682437c5d91fa07a72bdc3cb45c0600f82 Mon Sep 17 00:00:00 2001
From: Pu Zhibing <393733352@qq.com>
Date: 星期四, 19 六月 2025 09:57:19 +0800
Subject: [PATCH] Merge branch 'dev' of http://120.76.84.145:10101/gitblit/r/java/mx_charging_pile

---
 ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/TransactionRecordServiceImpl.java |   68 ++++++++++++++++++++++++++++++++++
 1 files changed, 68 insertions(+), 0 deletions(-)

diff --git a/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/TransactionRecordServiceImpl.java b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/TransactionRecordServiceImpl.java
new file mode 100644
index 0000000..87ba5e8
--- /dev/null
+++ b/ruoyi-service/ruoyi-jianguan/src/main/java/com/ruoyi/jianguan/mongodb/service/impl/TransactionRecordServiceImpl.java
@@ -0,0 +1,68 @@
+package com.ruoyi.jianguan.mongodb.service.impl;
+
+import com.ruoyi.common.core.utils.StringUtils;
+import com.ruoyi.integration.api.model.TimingSetting;
+import com.ruoyi.integration.api.model.TransactionRecord;
+import com.ruoyi.jianguan.constant.IotConstant;
+import com.ruoyi.jianguan.mongodb.service.TransactionRecordService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Sort;
+import org.springframework.data.mongodb.core.MongoTemplate;
+import org.springframework.data.mongodb.core.query.Criteria;
+import org.springframework.data.mongodb.core.query.Query;
+import org.springframework.stereotype.Service;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Objects;
+
+@Service
+public class TransactionRecordServiceImpl implements TransactionRecordService {
+    @Autowired
+    private MongoTemplate mongoTemplate;
+    @Override
+    public int create(TransactionRecord transactionRecord) {
+        mongoTemplate.save(transactionRecord);
+        return IotConstant.SUCCESS;
+    }
+
+    @Override
+    public TransactionRecord findById(String id) {
+        return mongoTemplate.findById(id, TransactionRecord.class);
+    }
+
+    @Override
+    public List<TransactionRecord> findAll() {
+        return mongoTemplate.findAll(TransactionRecord.class);
+    }
+    
+    /**
+     * 根据订单流水号查询数据
+     * @param code
+     * @return
+     */
+    @Override
+    public TransactionRecord findOne(String code) {
+        Query query = new Query();
+        if(StringUtils.isNotEmpty(code)){
+            query.addCriteria(Criteria.where("transaction_serial_number").is(code));
+        }
+        List<TransactionRecord> transactionRecords = mongoTemplate.find(
+                query.with(Sort.by(Sort.Order.desc("create_time")))
+                , TransactionRecord.class);
+        return transactionRecords.size() > 0 ? transactionRecords.get(0) : null;
+    }
+
+    @Override
+    public List<TransactionRecord> getRangeTimeData(Date startTime, Date endTime) {
+        Query query = new Query();
+        // 根据时间范围查询
+        if (Objects.nonNull(startTime) && Objects.nonNull(endTime)) {
+            query.addCriteria(Criteria.where("create_time").gte(startTime).lte(endTime));
+        }
+        List<TransactionRecord> list = mongoTemplate.find(
+                query.with(Sort.by(Sort.Order.desc("create_time")))
+                , TransactionRecord.class);
+        return list;
+    }
+}

--
Gitblit v1.7.1