diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java index 197e81c..1857511 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java @@ -22,4 +22,5 @@ List> getMessageList(@Param("openid") String openid); + String selectApplyNo(); } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java index 197e81c..1857511 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java @@ -22,4 +22,5 @@ List> getMessageList(@Param("openid") String openid); + String selectApplyNo(); } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java index bf1c934..699280f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java @@ -1,7 +1,5 @@ package com.casic.missiles.modular.system.service.impl; -import cn.hutool.core.date.DateUtil; -import com.alibaba.excel.EasyExcel; import com.alibaba.excel.util.DateUtils; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -54,14 +52,15 @@ @Override public Object add(VisitorApplyAddRequest visitorApplyAddRequest, HttpServletRequest request) { try { - JSONObject jsonObject = userActionService.getLoginStatus(request); + /* JSONObject jsonObject = userActionService.getLoginStatus(request); if(null == jsonObject){ return ResponseData.error(2401,Status.TOKEN_EXPIRES); - } + }*/ VisitorApply visitorApply = new VisitorApply(); UserDto userDto = new UserDto(); BeanUtils.copyProperties(visitorApplyAddRequest, visitorApply); - String messageId = getMassageId(visitorApply.getVisitorName(), visitorApply.getInTime()); + String maxNo = visitorApplyMapper.selectApplyNo(); + String messageId = NumberGeneratorUtil.getContactNo(Long.parseLong(maxNo)); userDto.setAccount(visitorApply.getStaffCode()); UserDto userInfo = userActionMapper.getUserInfo(userDto); visitorApply.setStaffPhone(userInfo.getPhone()); @@ -220,12 +219,6 @@ String token = userActionService.getToken(); return WXUserUtils.sendSubscribeMessage(jsonObject.toString(),token); } - public String getMassageId(String userName,String dateTime) throws ParseException { - String name = InitialUtils.getNameInitial(userName, false); - Date date = DateUtils.parseDate(dateTime); - String str = DateUtils.format(date, "yyyyMMddHHmmss"); - return name+str; - } public String getToUser(String staffCode) { UserDto userDto = new UserDto(); userDto.setAccount(staffCode); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java index 197e81c..1857511 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java @@ -22,4 +22,5 @@ List> getMessageList(@Param("openid") String openid); + String selectApplyNo(); } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java index bf1c934..699280f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java @@ -1,7 +1,5 @@ package com.casic.missiles.modular.system.service.impl; -import cn.hutool.core.date.DateUtil; -import com.alibaba.excel.EasyExcel; import com.alibaba.excel.util.DateUtils; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -54,14 +52,15 @@ @Override public Object add(VisitorApplyAddRequest visitorApplyAddRequest, HttpServletRequest request) { try { - JSONObject jsonObject = userActionService.getLoginStatus(request); + /* JSONObject jsonObject = userActionService.getLoginStatus(request); if(null == jsonObject){ return ResponseData.error(2401,Status.TOKEN_EXPIRES); - } + }*/ VisitorApply visitorApply = new VisitorApply(); UserDto userDto = new UserDto(); BeanUtils.copyProperties(visitorApplyAddRequest, visitorApply); - String messageId = getMassageId(visitorApply.getVisitorName(), visitorApply.getInTime()); + String maxNo = visitorApplyMapper.selectApplyNo(); + String messageId = NumberGeneratorUtil.getContactNo(Long.parseLong(maxNo)); userDto.setAccount(visitorApply.getStaffCode()); UserDto userInfo = userActionMapper.getUserInfo(userDto); visitorApply.setStaffPhone(userInfo.getPhone()); @@ -220,12 +219,6 @@ String token = userActionService.getToken(); return WXUserUtils.sendSubscribeMessage(jsonObject.toString(),token); } - public String getMassageId(String userName,String dateTime) throws ParseException { - String name = InitialUtils.getNameInitial(userName, false); - Date date = DateUtils.parseDate(dateTime); - String str = DateUtils.format(date, "yyyyMMddHHmmss"); - return name+str; - } public String getToUser(String staffCode) { UserDto userDto = new UserDto(); userDto.setAccount(staffCode); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java new file mode 100644 index 0000000..bc3b482 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java @@ -0,0 +1,47 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.concurrent.atomic.AtomicLong; + +/** + * @Description: 编号生成工具 + * @Author: wangpeng + * @Date: 2022/11/26 15:31 + */ +public class NumberGeneratorUtil { + + /** + * 支持每天最多生成9999个序号 + * + * @param nowNum + * @return + */ + public static synchronized String getContactNo(long nowNum) { + StringBuilder builder = new StringBuilder(); + StringBuilder num = new StringBuilder(); + AtomicLong count = new AtomicLong(nowNum); + + SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); + String datePrefix = format.format(new Date()); + + if(nowNum == 0){ + count = new AtomicLong(0); + num.append(datePrefix).append("000").append(count.incrementAndGet()); + }else{ + String s = String.valueOf(nowNum); + String substring = s.substring(0, s.length() - 4); + //不是当前日期,从0计算后4位 + if (Long.valueOf(datePrefix) > Long.valueOf(substring)) { + count = new AtomicLong(0); + num.append(datePrefix).append("000").append(count.incrementAndGet()); + } else { + num.append(count.incrementAndGet()); + } + } + // 组合 + builder.append(num); + + return builder.toString(); + } +} diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java index 197e81c..1857511 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/dao/VisitorApplyMapper.java @@ -22,4 +22,5 @@ List> getMessageList(@Param("openid") String openid); + String selectApplyNo(); } diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java index bf1c934..699280f 100644 --- a/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/service/impl/VisitorApplyServiceImpl.java @@ -1,7 +1,5 @@ package com.casic.missiles.modular.system.service.impl; -import cn.hutool.core.date.DateUtil; -import com.alibaba.excel.EasyExcel; import com.alibaba.excel.util.DateUtils; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -54,14 +52,15 @@ @Override public Object add(VisitorApplyAddRequest visitorApplyAddRequest, HttpServletRequest request) { try { - JSONObject jsonObject = userActionService.getLoginStatus(request); + /* JSONObject jsonObject = userActionService.getLoginStatus(request); if(null == jsonObject){ return ResponseData.error(2401,Status.TOKEN_EXPIRES); - } + }*/ VisitorApply visitorApply = new VisitorApply(); UserDto userDto = new UserDto(); BeanUtils.copyProperties(visitorApplyAddRequest, visitorApply); - String messageId = getMassageId(visitorApply.getVisitorName(), visitorApply.getInTime()); + String maxNo = visitorApplyMapper.selectApplyNo(); + String messageId = NumberGeneratorUtil.getContactNo(Long.parseLong(maxNo)); userDto.setAccount(visitorApply.getStaffCode()); UserDto userInfo = userActionMapper.getUserInfo(userDto); visitorApply.setStaffPhone(userInfo.getPhone()); @@ -220,12 +219,6 @@ String token = userActionService.getToken(); return WXUserUtils.sendSubscribeMessage(jsonObject.toString(),token); } - public String getMassageId(String userName,String dateTime) throws ParseException { - String name = InitialUtils.getNameInitial(userName, false); - Date date = DateUtils.parseDate(dateTime); - String str = DateUtils.format(date, "yyyyMMddHHmmss"); - return name+str; - } public String getToUser(String staffCode) { UserDto userDto = new UserDto(); userDto.setAccount(staffCode); diff --git a/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java b/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java new file mode 100644 index 0000000..bc3b482 --- /dev/null +++ b/casic-server/src/main/java/com/casic/missiles/modular/system/utils/NumberGeneratorUtil.java @@ -0,0 +1,47 @@ +package com.casic.missiles.modular.system.utils; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.concurrent.atomic.AtomicLong; + +/** + * @Description: 编号生成工具 + * @Author: wangpeng + * @Date: 2022/11/26 15:31 + */ +public class NumberGeneratorUtil { + + /** + * 支持每天最多生成9999个序号 + * + * @param nowNum + * @return + */ + public static synchronized String getContactNo(long nowNum) { + StringBuilder builder = new StringBuilder(); + StringBuilder num = new StringBuilder(); + AtomicLong count = new AtomicLong(nowNum); + + SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd"); + String datePrefix = format.format(new Date()); + + if(nowNum == 0){ + count = new AtomicLong(0); + num.append(datePrefix).append("000").append(count.incrementAndGet()); + }else{ + String s = String.valueOf(nowNum); + String substring = s.substring(0, s.length() - 4); + //不是当前日期,从0计算后4位 + if (Long.valueOf(datePrefix) > Long.valueOf(substring)) { + count = new AtomicLong(0); + num.append(datePrefix).append("000").append(count.incrementAndGet()); + } else { + num.append(count.incrementAndGet()); + } + } + // 组合 + builder.append(num); + + return builder.toString(); + } +} diff --git a/casic-web/src/main/resources/mapper/VisitorApplyMapper.xml b/casic-web/src/main/resources/mapper/VisitorApplyMapper.xml index e81414d..1189202 100644 --- a/casic-web/src/main/resources/mapper/VisitorApplyMapper.xml +++ b/casic-web/src/main/resources/mapper/VisitorApplyMapper.xml @@ -39,5 +39,8 @@ AND t1.`status` = '0' and t1.open_id = #{openid} ORDER BY t1.create_time desc + \ No newline at end of file