From 7730a5e43fbf8bb7f5c94760321e7577fca4bd57 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Sat, 25 May 2024 17:02:17 +0800
Subject: [PATCH] 工单号生成
---
src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 52 insertions(+), 0 deletions(-)
diff --git a/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java b/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java
index 73f8a7e..ad88169 100644
--- a/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java
+++ b/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java
@@ -18,6 +18,8 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.common.param.GridSet;
+import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.eCallEventTwo.dto.ECallEventTwoDTO;
import org.springblade.modules.eCallEventTwo.entity.ECallEventTwoEntity;
import org.springblade.modules.eCallEventTwo.mapper.EcCallEventTwoMapper;
@@ -25,7 +27,10 @@
import org.springblade.modules.eCallEventTwo.vo.ECallEventTwoVO;
import org.springframework.stereotype.Service;
+import java.time.LocalDateTime;
+import java.time.format.DateTimeFormatter;
import java.util.List;
+import java.util.Random;
/**
* 工单 服务实现类
@@ -65,5 +70,52 @@
return this.baseMapper.selectECallEventTwoList(eCallEventTwoDTO);
}
+ @Override
+ public boolean saveTwo(ECallEventTwoVO eCallEventTwo) {
+ eCallEventTwo.setLat(eCallEventTwo.getSceneGeoLat().toString());
+ eCallEventTwo.setLng(eCallEventTwo.getSceneGeoLng().toString());
+ // 设置工单号
+ eCallEventTwo.setOrderCode(getOrderCode());
+ // 计算网格
+ if (eCallEventTwo.getLng() != null && eCallEventTwo.getLat() != null) {
+ // 点落面计算警格,网格,警格
+ GridSet invoke = new GridSet().invoke(ECallEventTwoVO.class, eCallEventTwo,
+ "lng", "lat", "applicantGrid", "jwGridCode");
+ }
+ return save(eCallEventTwo);
+ }
+ /**
+ * 获取工单号
+ * @return
+ */
+ private String getOrderCode() {
+ // 生成工单号:
+ // 话务行政区划、编号类型、来电时间、来源渠道、流水号6 361100-00-202402131524-01-123456
+ // 行政区划
+ String deptId = AuthUtil.getDeptId();
+ // 编号类型
+ String no = "00";
+ // 时间
+ String dateStr = getDateStr();
+ // 来源渠道
+ String source = "01";
+ // 流水号6位
+ String serial = getSerialStr();
+
+ String orderCode = deptId + "-" + no + "-" + dateStr + "-" + source + "-" + serial;
+ return orderCode;
+ }
+
+ private String getSerialStr() {
+ Random random = new Random();
+ int sixDigitNumber = random.nextInt(900000) + 100000; // 生成100000到999999之间的随机数
+ return String.valueOf(sixDigitNumber);
+ }
+
+ private String getDateStr() {
+ LocalDateTime now = LocalDateTime.now();
+ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMddHHmm");
+ return now.format(formatter);
+ }
}
--
Gitblit v1.9.3