From 6968289980f8140da2580010c800436bca47795f Mon Sep 17 00:00:00 2001
From: luxiaotao1123 <t1341870251@63.com>
Date: 星期二, 22 十一月 2022 14:27:15 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/crm/manager/service/impl/CstmrServiceImpl.java | 52 +++++++++++++++++++++++++++++++++++++++++++++++++---
1 files changed, 49 insertions(+), 3 deletions(-)
diff --git a/src/main/java/com/zy/crm/manager/service/impl/CstmrServiceImpl.java b/src/main/java/com/zy/crm/manager/service/impl/CstmrServiceImpl.java
index 8af1c89..2655f82 100644
--- a/src/main/java/com/zy/crm/manager/service/impl/CstmrServiceImpl.java
+++ b/src/main/java/com/zy/crm/manager/service/impl/CstmrServiceImpl.java
@@ -1,5 +1,7 @@
package com.zy.crm.manager.service.impl;
+import com.baomidou.mybatisplus.plugins.Page;
+import com.core.common.Cools;
import com.zy.crm.manager.mapper.CstmrMapper;
import com.zy.crm.manager.entity.Cstmr;
import com.zy.crm.manager.service.CstmrService;
@@ -10,11 +12,55 @@
public class CstmrServiceImpl extends ServiceImpl<CstmrMapper, Cstmr> implements CstmrService {
@Override
- public String getNextUuid() {
- Cstmr cstmr = this.baseMapper.selectCstmrByNewestUuid();
+ public Cstmr selectByUuid(Long hostId, String uuid) {
+ return this.baseMapper.selectByUuid(hostId, uuid);
+ }
+
+ @Override
+ public synchronized String getUuid(Long hostId) {
+ String uuid = null;
+ int times = 0;
+ while (Cools.isEmpty(uuid)) {
+ if (times > 100) { break; }
+ String nextUuid = getNextUuid(hostId);
+ if (selectByUuid(hostId, nextUuid) == null) {
+ uuid = nextUuid;
+ }
+ times ++;
+ }
+ return uuid;
+ }
+
+ private String getNextUuid(Long hostId) {
+ Cstmr cstmr = this.baseMapper.selectCstmrByNewestUuid(hostId);
if (cstmr == null) {
return "0001";
}
- return String.valueOf(Integer.parseInt(cstmr.getUuid()) + 1);
+ return zerofill(String.valueOf(Integer.parseInt(cstmr.getUuid()) + 1), 4);
}
+
+ @Override
+ public Page<Cstmr> getPage(Page<Cstmr> page, Long hostId, String deptId, Long userId, String condition) {
+ return page.setRecords(baseMapper.listByPage(page, hostId, deptId, userId, condition));
+ }
+
+ @Override
+ public int updateDeptIdByUserId(Long userId, Long deptId) {
+ return this.baseMapper.updateDeptIdByUserId(userId, deptId);
+ }
+
+ public static String zerofill(String msg, Integer count){
+ if (msg.length() == count){
+ return msg;
+ } else if (msg.length() > count){
+ return msg.substring(0, 16);
+ } else {
+ StringBuilder msgBuilder = new StringBuilder(msg);
+ for (int i = 0; i<count-msg.length(); i++){
+ msgBuilder.insert(0,"0");
+ }
+ return msgBuilder.toString();
+ }
+ }
+
}
--
Gitblit v1.9.1