From 06db1ee3700ee171e0244b1593dc225b1345757d Mon Sep 17 00:00:00 2001 From: wen <1455474577@qq.com> Date: Mon, 14 Feb 2022 10:31:11 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E6=88=90=E5=8D=A1=E6=93=8D=E4=BD=9C?= =?UTF-8?q?=E6=97=A5=E5=BF=97=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../card/controller/XhpcCardController.java | 6 ++ .../card/domain/OperateCardLogRequest.java | 44 +++++++++++ .../card/domain/OperateCardLogResponse.java | 77 +++++++++++++++++++ .../xhpc/card/mapper/TIccardLogMapper.java | 40 ++++++++++ .../java/com/xhpc/card/pojo/TIccardLog.java | 50 ++++++++++++ .../xhpc/card/service/IXhpcCardService.java | 9 +++ .../service/impl/XhpcCardServiceImpl.java | 33 ++++++++ .../java/com/xhpc/card/utils/MyDateUtil.java | 22 ++++++ 8 files changed, 281 insertions(+) create mode 100644 xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogRequest.java create mode 100644 xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogResponse.java create mode 100644 xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/TIccardLogMapper.java create mode 100644 xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/pojo/TIccardLog.java diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/controller/XhpcCardController.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/controller/XhpcCardController.java index f1ed6417..2aedebc3 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/controller/XhpcCardController.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/controller/XhpcCardController.java @@ -149,5 +149,11 @@ public class XhpcCardController extends BaseController { return xhpcCardService.reportTheLossOfCard(cardId); } + @GetMapping("/operateCardLog") + public R operateCardLog(OperateCardLogRequest operateCardLogRequest) { + + return xhpcCardService.operateCardLog(operateCardLogRequest); + } + } diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogRequest.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogRequest.java new file mode 100644 index 00000000..793a48b8 --- /dev/null +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogRequest.java @@ -0,0 +1,44 @@ +package com.xhpc.card.domain; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * operateCardLog + * + * @author WH + * @date 2022/2/13 22:19 + * @since version-1.0 + */ +@NoArgsConstructor +@Data +public class OperateCardLogRequest { + + /** + * operateType + */ + @JsonProperty("operateType") + private Integer operateType; + /** + * logStartTime + */ + @JsonProperty("logStartTime") + private String logStartTime; + /** + * logEndTime + */ + @JsonProperty("logEndTime") + private String logEndTime; + /** + * currentPage + */ + @JsonProperty("currentPage") + private Long currentPage; + /** + * items + */ + @JsonProperty("items") + private Long items; + +} diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogResponse.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogResponse.java new file mode 100644 index 00000000..15a0542a --- /dev/null +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/domain/OperateCardLogResponse.java @@ -0,0 +1,77 @@ +package com.xhpc.card.domain; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * operateCardLog的响应数据包装类 + * + * @author WH + * @date 2022/2/13 22:30 + * @since version-1.0 + */ +@NoArgsConstructor +@Data +public class OperateCardLogResponse { + + + /** + * totalItems + */ + @JsonProperty("totalItems") + private Long totalItems; + /** + * data + */ + @JsonProperty("data") + private List data; + + /** + * DataDTO + */ + @NoArgsConstructor + @Data + public static class DataDTO { + + /** + * grantOperatorName + */ + @JsonProperty("grantOperatorName") + private String grantOperatorName; + /** + * cardSerialNumber + */ + @JsonProperty("cardSerialNumber") + private String cardSerialNumber; + /** + * operate + */ + @JsonProperty("operate") + private Integer operate; + /** + * cashPledge + */ + @JsonProperty("cashPledge") + private Long cashPledge; + /** + * balance + */ + @JsonProperty("balance") + private Long balance; + /** + * operatorName + */ + @JsonProperty("operatorName") + private String operatorName; + /** + * operateTime + */ + @JsonProperty("operateTime") + private String operateTime; + + } + +} diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/TIccardLogMapper.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/TIccardLogMapper.java new file mode 100644 index 00000000..2340ef85 --- /dev/null +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/mapper/TIccardLogMapper.java @@ -0,0 +1,40 @@ +package com.xhpc.card.mapper; + +import com.xhpc.card.domain.OperateCardLogRequest; +import com.xhpc.card.pojo.TIccardLog; + +import java.util.List; + +public interface TIccardLogMapper { + + int deleteByPrimaryKey(Integer id); + + int insert(TIccardLog record); + + int insertSelective(TIccardLog record); + + TIccardLog selectByPrimaryKey(Integer id); + + int updateByPrimaryKeySelective(TIccardLog record); + + int updateByPrimaryKey(TIccardLog record); + + /** + * query list of log of operate card + * + * @author WH + * @date 2022/2/13 22:43 + * @since version-1.0 + */ + List selectByCondition(OperateCardLogRequest operateCardLogRequest); + + /** + * query count of list of log of operate card + * + * @author WH + * @date 2022/2/13 23:11 + * @since version-1.0 + */ + Long selectCountByCondition(OperateCardLogRequest operateCardLogRequest); + +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/pojo/TIccardLog.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/pojo/TIccardLog.java new file mode 100644 index 00000000..45b5f041 --- /dev/null +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/pojo/TIccardLog.java @@ -0,0 +1,50 @@ +package com.xhpc.card.pojo; + +import lombok.Data; + +import java.io.Serializable; +import java.util.Date; + +/** + * t_iccard_log + * + * @author + */ +@Data +public class TIccardLog implements Serializable { + + private Integer id; + + /** + * 卡序列号, 用户身份证号, 读写卡器序列号 + */ + private String uniqueid; + + /** + * 日志类型:0.用户卡; 1.读写卡器 + */ + private Byte type; + + /** + * 操作。0.初始化, 1.发卡, 2.充值, 3.退费, 4.解锁, 5.挂失, 6.解除挂失, 7.重置密码, 8.作废卡, 9.添加读写卡器, 10.删除读写卡器 + */ + private Byte operate; + + /** + * 操作员ID, 关联t_users usersID + */ + private Integer operatorid; + + /** + * 日志内容。操作的序列化 + */ + private String log; + + /** + * 添加日期 + */ + private Date createtime; + + private static final long serialVersionUID = 1L; + +} \ No newline at end of file diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/IXhpcCardService.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/IXhpcCardService.java index 755c5939..3450e922 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/IXhpcCardService.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/IXhpcCardService.java @@ -119,4 +119,13 @@ public interface IXhpcCardService { */ R reportTheLossOfCard(Integer cardId); + /** + * query to operate log of card + * + * @author WH + * @date 2022/2/13 22:35 + * @since version-1.0 + */ + R operateCardLog(OperateCardLogRequest operateCardLogRequest); + } diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java index a0740a40..55cf1eb2 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/service/impl/XhpcCardServiceImpl.java @@ -5,6 +5,7 @@ import com.xhpc.card.domain.*; import com.xhpc.card.mapper.*; import com.xhpc.card.pojo.*; import com.xhpc.card.service.IXhpcCardService; +import com.xhpc.card.utils.MyDateUtil; import com.xhpc.card.utils.MyPagingUtil; import com.xhpc.common.api.CardHistoryOrderService; import com.xhpc.common.core.constant.Constants; @@ -450,6 +451,38 @@ public class XhpcCardServiceImpl implements IXhpcCardService { return R.ok(); } + @Override + public R operateCardLog(OperateCardLogRequest operateCardLogRequest) { + //计算分页索引 + long startIndex = MyPagingUtil.calculateStartIndex(operateCardLogRequest.getCurrentPage(), operateCardLogRequest.getItems()); + operateCardLogRequest.setCurrentPage(startIndex); + OperateCardLogResponse operateCardLogResponse = new OperateCardLogResponse(); + operateCardLogResponse.setData(new ArrayList<>()); + List dataList = tIccardLogMapper.selectByCondition(operateCardLogRequest); + if (dataList.isEmpty()) { + return R.ok(operateCardLogResponse); + } + Long totalItems = tIccardLogMapper.selectCountByCondition(operateCardLogRequest); + operateCardLogResponse.setTotalItems(totalItems); + for (TIccardLog tIccardLog : dataList) { + OperateCardLogResponse.DataDTO dataDTO = new OperateCardLogResponse.DataDTO(); + String log = tIccardLog.getLog(); + CardLogInfo cardLogInfo = JSONUtil.toBean(log, CardLogInfo.class); + CardLogInfo.CardInfoDTO cardInfo = cardLogInfo.getCardInfo(); + XhpcOperator operator = xhpcOperatorMapper.selectByPrimaryKey(Long.valueOf(cardInfo.getCorpNo())); + dataDTO.setGrantOperatorName(operator.getName()); + dataDTO.setCardSerialNumber(tIccardLog.getUniqueid()); + dataDTO.setOperate(Integer.valueOf(tIccardLog.getOperate())); + dataDTO.setCashPledge(Long.valueOf(cardInfo.getCashPledge())); + dataDTO.setBalance(Long.valueOf(cardInfo.getBalance())); + dataDTO.setOperateTime(MyDateUtil.parseDateToStr(tIccardLog.getCreatetime())); + XhpcOperator operator2 = xhpcOperatorMapper.selectByPrimaryKey(cardLogInfo.getOperatorId()); + dataDTO.setOperatorName(operator2.getName()); + operateCardLogResponse.getData().add(dataDTO); + } + return R.ok(operateCardLogResponse); + } + private void fillUserInfo(CardUserInfo cardUserInfo, Map userData) { cardUserInfo.setCardSerialNumber((String) userData.get("cardID")); diff --git a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/utils/MyDateUtil.java b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/utils/MyDateUtil.java index 5f654ab0..275f9688 100644 --- a/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/utils/MyDateUtil.java +++ b/xhpc-modules/xhpc-card/src/main/java/com/xhpc/card/utils/MyDateUtil.java @@ -1,7 +1,9 @@ package com.xhpc.card.utils; import cn.hutool.core.date.DateTime; +import com.xhpc.common.core.utils.DateUtils; +import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; @@ -16,12 +18,32 @@ import java.util.Date; public class MyDateUtil { public static final String DATE_FORMAT_DATE_TIME = "yyyy-MM-dd HH:mm:ss"; + public static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss"; public static void main(String[] args) { System.out.println(getCurrentDateStr()); } + /** + * 对parseDateStr方法进行再次封装,默认转换格式为YYYY_MM_DD_HH_MM_SS + * + * @param date 时间对象 + * @return YYYY_MM_DD_HH_MM_SS格式的时间字符串 + * @author WH + * @date 2021/12/27 13:21 + * @since version-1.0 + */ + public static final String parseDateToStr(final Date date) { + + return parseDateToStr(DateUtils.YYYY_MM_DD_HH_MM_SS, date); + } + + public static final String parseDateToStr(final String format, final Date date) { + + return new SimpleDateFormat(format).format(date); + } + /** * 以xxxx年x月xx日 星期x的字符串格式展示当前时间 *