From 3a0ac36aabeec03b8ce80560768f416a37ae4938 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=85=95=E4=B8=8B?= <484014559@qq.com> Date: Mon, 19 Aug 2024 13:08:09 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E6=97=B6=E8=BA=AB=E4=BB=BD=E8=AF=81?= =?UTF-8?q?=E8=87=AA=E5=8A=A9=E8=A1=A5=E5=8A=9E=E6=9C=BA=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../admin/asset/vo/AssetRespVO.java | 2 + .../admin/ticssrMachine/TicssrMachineApi.java | 37 +++++++++++++++++++ .../PassengerInformation.java | 19 ++++++++++ .../PassengerInformationRepository.java | 15 ++++++++ .../PassengerInformationService.java | 5 +++ .../PassengerInformationServiceImpl.java | 26 +++++++++++++ 6 files changed, 104 insertions(+) create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/ticssrMachine/TicssrMachineApi.java create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/dataobject/passengerInformation/PassengerInformation.java create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/passengerInformation/PassengerInformationRepository.java create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationService.java create mode 100644 ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationServiceImpl.java diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/asset/vo/AssetRespVO.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/asset/vo/AssetRespVO.java index 19e0d3ab5..13f124e6f 100644 --- a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/asset/vo/AssetRespVO.java +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/asset/vo/AssetRespVO.java @@ -41,4 +41,6 @@ public class AssetRespVO { @ExcelProperty("最后一次反馈时间") private Long lastfeedbacktime; + private Long personCount; + } \ No newline at end of file diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/ticssrMachine/TicssrMachineApi.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/ticssrMachine/TicssrMachineApi.java new file mode 100644 index 000000000..065006de1 --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/controller/admin/ticssrMachine/TicssrMachineApi.java @@ -0,0 +1,37 @@ +package cn.iocoder.yudao.module.datacenter.controller.admin.ticssrMachine; + +import cn.iocoder.yudao.module.datacenter.controller.admin.asset.vo.AssetRespVO; +import cn.iocoder.yudao.module.datacenter.service.asset.AssetService; +import cn.iocoder.yudao.module.datacenter.service.passengerInformation.PassengerInformationService; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * @Description 临时身份证自助补办机 + */ +@Tag(name = "大屏服务 - 临时身份证自助补办机") +@RestController +@RequestMapping("/datacenter/ticssrMachine") +@Validated +public class TicssrMachineApi { + @Autowired + private AssetService assetService; + @Autowired + private PassengerInformationService passengerInformationService; + + @GetMapping("/temporaryIDCardMessage") + public List temporaryIDCardMessage(){ + List list = assetService.nameAsset("临时身份证补办机"); + for (AssetRespVO assetRespVO : list) { + Long personCount = passengerInformationService.personCount(assetRespVO.getDataId()); + assetRespVO.setPersonCount(personCount); + } + return list; + } +} diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/dataobject/passengerInformation/PassengerInformation.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/dataobject/passengerInformation/PassengerInformation.java new file mode 100644 index 000000000..9dd438810 --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/dataobject/passengerInformation/PassengerInformation.java @@ -0,0 +1,19 @@ +package cn.iocoder.yudao.module.datacenter.dal.dataobject.passengerInformation; + +import lombok.Data; +import org.springframework.data.mongodb.core.mapping.Document; + +@Document("passengerInformation") +@Data +public class PassengerInformation { + //编号 + private String id; + //设备id + private String deviceId; + //旅客姓名 + private String name; + //旅客身份证 + private String idCard; + //提交时间 + private String commitTime; +} diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/passengerInformation/PassengerInformationRepository.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/passengerInformation/PassengerInformationRepository.java new file mode 100644 index 000000000..4725e8953 --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/dal/mongodb/passengerInformation/PassengerInformationRepository.java @@ -0,0 +1,15 @@ +package cn.iocoder.yudao.module.datacenter.dal.mongodb.passengerInformation; + +import cn.iocoder.yudao.module.datacenter.dal.dataobject.passengerInformation.PassengerInformation; +import org.springframework.data.mongodb.repository.MongoRepository; +import org.springframework.data.mongodb.repository.Query; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface PassengerInformationRepository extends MongoRepository { + @Query("{ 'commitTime': { $regex: ?0 }, 'deviceId': ?1 }") + List countAllByDeviceId(String regex, String deviceId); + +} diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationService.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationService.java new file mode 100644 index 000000000..d67e7ac70 --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationService.java @@ -0,0 +1,5 @@ +package cn.iocoder.yudao.module.datacenter.service.passengerInformation; + +public interface PassengerInformationService { + public Long personCount(String deviceId); +} diff --git a/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationServiceImpl.java b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationServiceImpl.java new file mode 100644 index 000000000..83464e04a --- /dev/null +++ b/ludu-module-datacenter/ludu-module-datacenter-biz/src/main/java/cn/iocoder/yudao/module/datacenter/service/passengerInformation/PassengerInformationServiceImpl.java @@ -0,0 +1,26 @@ +package cn.iocoder.yudao.module.datacenter.service.passengerInformation; + +import cn.iocoder.yudao.module.datacenter.dal.mongodb.passengerInformation.PassengerInformationRepository; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import java.text.SimpleDateFormat; +import java.util.Calendar; + +@Service +@Validated +public class PassengerInformationServiceImpl implements PassengerInformationService{ + @Autowired + private PassengerInformationRepository passengerInformationRepository; + @Override + public Long personCount(String deviceId) { + // 获取今天的日期字符串,格式为 "yyyy-MM-dd" + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); + Calendar calendar = Calendar.getInstance(); + String todayDate = dateFormat.format(calendar.getTime()); + // 构造正则表达式以匹配今天的日期 + String regex = "^" + todayDate; + return Long.parseLong(passengerInformationRepository.countAllByDeviceId(regex,deviceId).size()+""); + } +}