From df1325b0c100ead300a5a1b99438055d9446a436 Mon Sep 17 00:00:00 2001 From: mg <maokecheng@163.com> Date: 星期六, 08 十月 2022 20:17:46 +0800 Subject: [PATCH] 添加消息管理功能和生成随机数工具类 --- ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java | 31 +++++++++++++++ ycl-platform/src/main/java/com/ycl/entity/message/Message.java | 4 +- ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java | 7 +++ ycl-platform/src/main/java/com/ycl/dto/message/MessageParam.java | 11 ++--- ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java | 55 +++++++++++++++++++++++++++ ycl-platform/src/main/java/com/ycl/controller/message/MessageController.java | 2 6 files changed, 101 insertions(+), 9 deletions(-) diff --git a/ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java b/ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java new file mode 100644 index 0000000..c228537 --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/common/util/RandomNumberGenerator.java @@ -0,0 +1,55 @@ +package com.ycl.common.util; + +import java.util.Random; + +public class RandomNumberGenerator { + /** + * 杩欐槸鍏稿瀷鐨勯殢鏈烘礂鐗岀畻娉曘�� + * 娴佺▼鏄粠澶囬�夋暟缁勪腑閫夋嫨涓�涓斁鍏ョ洰鏍囨暟缁勪腑锛屽皢閫夊彇鐨勬暟缁勪粠澶囬�夋暟缁勭Щ闄わ紙鏀捐嚦鏈�鍚庯紝骞剁缉灏忛�夋嫨鍖哄煙锛� + * 绠楁硶鏃堕棿澶嶆潅搴(n) + * @return 闅忔満8涓轰笉閲嶅鏁扮粍 + */ + public static synchronized String generateNumber(int count) { + String no=""; + //鍒濆鍖栧閫夋暟缁� + int[] defaultNums = new int[10]; + for (int i = 0; i < defaultNums.length; i++) { + defaultNums[i] = i; + } + + Random random = new Random(); + int[] nums = new int[count]; + //榛樿鏁扮粍涓彲浠ラ�夋嫨鐨勯儴鍒嗛暱搴� + int canBeUsed = 10; + //濉厖鐩爣鏁扮粍 + for (int i = 0; i < nums.length; i++) { + //灏嗛殢鏈洪�夊彇鐨勬暟瀛楀瓨鍏ョ洰鏍囨暟缁� + int index = random.nextInt(canBeUsed); + nums[i] = defaultNums[index]; + //灏嗗凡鐢ㄨ繃鐨勬暟瀛楁墧鍒板閫夋暟缁勬渶鍚庯紝骞跺噺灏忓彲閫夊尯鍩� + swap(index, canBeUsed - 1, defaultNums); + canBeUsed--; + } + if (nums.length>0) { + for (int i = 0; i < nums.length; i++) { + no+=nums[i]; + } + } + + return no; + } +// private static final int LENGTH = 6; + + private static void swap(int i, int j, int[] nums) { + int temp = nums[i]; + nums[i] = nums[j]; + nums[j] = temp; + } + + + public static void main(String[] args) { + for (int i = 0; i < 10; i++) { + System.out.println(generateNumber(8)); + } + } +} diff --git a/ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java b/ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java new file mode 100644 index 0000000..513410a --- /dev/null +++ b/ycl-platform/src/main/java/com/ycl/common/util/RandomStringUtil.java @@ -0,0 +1,31 @@ +package com.ycl.common.util; + +import java.util.Random; + +public class RandomStringUtil { + public static final String NUMBERS = "0123456789"; + public static final String LOWER_CASE = "abcdefghijklmnopqrstuvwxyz"; + public static final String CAPITAL = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + public static final String ALL = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + + /** + * 鐢熸垚鎸囧畾闀垮害鐨勯殢鏈哄瓧绗︿覆 + * + * @param length + * @return + */ + public static String getRandomString(int length, String base) { // length琛ㄧず鐢熸垚瀛楃涓茬殑闀垮害 + int baseLength = base.length(); + Random random = new Random(); + StringBuffer sb = new StringBuffer(""); + for (int i = 0; i < length; i++) { + int number = random.nextInt(baseLength); + sb.append(base.charAt(number)); + } + return sb.toString(); + } + + public static void main(String[] args) { + System.out.println(getRandomString(24, RandomStringUtil.ALL)); + } +} diff --git a/ycl-platform/src/main/java/com/ycl/controller/message/MessageController.java b/ycl-platform/src/main/java/com/ycl/controller/message/MessageController.java index 356a9b2..a929dd4 100644 --- a/ycl-platform/src/main/java/com/ycl/controller/message/MessageController.java +++ b/ycl-platform/src/main/java/com/ycl/controller/message/MessageController.java @@ -22,7 +22,7 @@ */ @RestController @RequestMapping("/message") -@Api(tags = "娑堟伅") +@Api(tags = "娑堟伅绠$悊") public class MessageController { @Autowired diff --git a/ycl-platform/src/main/java/com/ycl/dto/message/MessageParam.java b/ycl-platform/src/main/java/com/ycl/dto/message/MessageParam.java index bef1d13..08cdb03 100644 --- a/ycl-platform/src/main/java/com/ycl/dto/message/MessageParam.java +++ b/ycl-platform/src/main/java/com/ycl/dto/message/MessageParam.java @@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotNull; /** @@ -22,14 +21,14 @@ * 鏍囬 */ @ApiModelProperty(value = "鏍囬") - @NotBlank(message = "鏍囬涓虹┖") + @NotNull(message = "鏍囬涓虹┖") private String head; /** * 娑堟伅绫诲瀷 */ @ApiModelProperty(value = "娑堟伅绫诲瀷") - @NotBlank(message = "娑堟伅绫诲瀷涓虹┖") - private Long messageType; + @NotNull(message = "娑堟伅绫诲瀷涓虹┖") + private Integer messageType; /** * 娑堟伅浣� */ @@ -46,7 +45,7 @@ * 鎺ユ敹鑰� */ @ApiModelProperty(value = "鎺ユ敹鑰�") - @NotBlank(message = "鎺ユ敹鑰呬负绌�") + @NotNull(message = "鎺ユ敹鑰呬负绌�") private String targetTo; /** * 闅忔満鐮� @@ -57,7 +56,7 @@ * 鍙戦�佹椂闂� */ @ApiModelProperty(value = "鍙戦�佹椂闂�") - @NotBlank(message = "鍙戦�佹椂闂翠负绌�") + @NotNull(message = "鍙戦�佹椂闂翠负绌�") private String sendTime; /** * 鐘舵��0-鏈彂甯�1-宸插彂甯� diff --git a/ycl-platform/src/main/java/com/ycl/entity/message/Message.java b/ycl-platform/src/main/java/com/ycl/entity/message/Message.java index 5a7b449..cd18772 100644 --- a/ycl-platform/src/main/java/com/ycl/entity/message/Message.java +++ b/ycl-platform/src/main/java/com/ycl/entity/message/Message.java @@ -51,7 +51,7 @@ @TableField("message_type") @ApiModelProperty(value = "娑堟伅绫诲瀷") @NotBlank(message = "娑堟伅绫诲瀷涓虹┖") - private Long messageType; + private Integer messageType; /** * 娑堟伅浣� @@ -113,7 +113,7 @@ * 鏄惁鏌ョ湅0-鏈煡鐪�1-宸叉煡鐪� */ @TableField("is_view") - @ApiModelProperty(value = "鐘舵��0-鏈彂甯�1-宸插彂甯�") + @ApiModelProperty(value = "鏄惁鏌ョ湅0-鏈煡鐪�1-宸叉煡鐪�") private Integer isView; /** * 澶囨敞 diff --git a/ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java b/ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java index da47266..f9ec3ab 100644 --- a/ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java +++ b/ycl-platform/src/main/java/com/ycl/service/message/impl/IMessageServiceImpl.java @@ -1,6 +1,7 @@ package com.ycl.service.message.impl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.common.util.RandomNumberGenerator; import com.ycl.dto.message.MessageParam; import com.ycl.entity.message.Message; import com.ycl.mapper.message.MessageMapper; @@ -24,9 +25,15 @@ public Message sendMessage(MessageParam mssageParam) { Message message = new Message(); BeanUtils.copyProperties(mssageParam, message); + //鐢熸垚8浣嶉殢鏈烘暟娑堟伅缂栫爜 + String messageNumber = RandomNumberGenerator.generateNumber(8); + StringBuilder sb = new StringBuilder("XX"); + sb.append(messageNumber); + message.setMessageNumber(sb.toString()); //鐢熸垚榛樿鍙傛暟 message.setCreateTime(new Date()); message.setUpdateTime(new Date()); + message.setIsView(0); baseMapper.insert(message); return message; } -- Gitblit v1.8.0