BUG修复

This commit is contained in:
luolm 2025-02-17 22:32:02 +08:00
parent 027bc4eedf
commit ece69c8750
4 changed files with 26 additions and 12 deletions

View File

@ -2,7 +2,19 @@ package com.nflg.mobilebroken.admin.constant;
public class Constant {
/**
* 设备类型编码前缀
*/
public static final String DeviceTypeCodePrefix="DEVT";
/**
* 代理商编码前缀
*/
public static final String CustomerCodePrefix="CUSM";
/**
* 区域编码前缀
*/
public static final String AreaCodePrefix="A";
}

View File

@ -4,6 +4,7 @@ import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.StrUtil;
import com.nflg.mobilebroken.admin.annotation.ApiMark;
import com.nflg.mobilebroken.admin.constant.Constant;
import com.nflg.mobilebroken.admin.pojo.dto.BaseAreaEditDTO;
import com.nflg.mobilebroken.admin.pojo.query.BaseAreaQuery;
import com.nflg.mobilebroken.admin.service.AdminBaseAreaService;
@ -13,6 +14,7 @@ import com.nflg.mobilebroken.common.pojo.ApiResult;
import com.nflg.mobilebroken.common.pojo.PageData;
import com.nflg.mobilebroken.common.pojo.vo.TBaseAreaVO;
import com.nflg.mobilebroken.common.util.AdminUserUtil;
import com.nflg.mobilebroken.common.util.UniqueSequenceGenerator;
import com.nflg.mobilebroken.common.util.VUtils;
import com.nflg.mobilebroken.repository.entity.TBaseArea;
import com.nflg.mobilebroken.repository.service.ITBaseAreaService;
@ -84,7 +86,7 @@ public class BaseAreaController extends ControllerBase {
ent.setDataModifyUserNo(AdminUserUtil.getUserNo());
ent.setDataModifyUserName(AdminUserUtil.getUserName());
ent.setDataModifyTime(LocalDateTime.now());
ent.setAreaCode(StrUtil.padPre(count.toString(),6,"0"));
ent.setAreaCode(UniqueSequenceGenerator.generateCode(Constant.AreaCodePrefix));
baseAreaService.save(ent);
return ApiResult.success(true);

View File

@ -4,6 +4,7 @@ import com.nflg.mobilebroken.admin.annotation.ApiMark;
import com.nflg.mobilebroken.admin.service.AdminCustomerService;
import com.nflg.mobilebroken.admin.service.AdminDeviceService;
import com.nflg.mobilebroken.admin.service.CrmService;
import com.nflg.mobilebroken.common.util.UniqueSequenceGenerator;
import com.nflg.mobilebroken.repository.entity.AdminApi;
import com.nflg.mobilebroken.repository.service.IAdminApiService;
import org.junit.jupiter.api.Test;
@ -33,7 +34,10 @@ public class ControllerTest {
@Test
public void testToken(){
customerService.syncFromCrm("2020-04-15","2020-04-15"); //2020-05-21
// customerService.syncFromCrm("2020-04-15","2020-04-15"); //2020-05-21
String qu = UniqueSequenceGenerator.generateCode("QU");
System.out.println(qu);
}
@Test

View File

@ -2,11 +2,12 @@ package com.nflg.mobilebroken.common.util;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
import java.util.concurrent.atomic.AtomicInteger;
public class UniqueSequenceGenerator {
private static final SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmssSSS");
private static final SimpleDateFormat sdf = new SimpleDateFormat("MMddHHmmssSSS");
@ -15,17 +16,12 @@ public class UniqueSequenceGenerator {
* @return 唯一顺序编码字符串
*/
public static synchronized String generateCode(String prefix) {
AtomicInteger sequence = new AtomicInteger(0);
// 获取当前时间戳精确到毫秒
String timestamp = sdf.format(new Date());
// 获取序列号并在达到9999时重置为0
int seq = sequence.incrementAndGet();
if (seq > 9999) {
sequence.set(0);
seq = sequence.incrementAndGet();
}
// 格式化序列为4位数字不足前面补0
String sequenceStr = String.format("%04d", seq);
Random random=new Random();
String sequenceStr = String.format("%04d", random.nextInt(10000));
return prefix + timestamp + sequenceStr;
}