优化猜词按钮颜色,新增首页每日情话,新增斗图功能

This commit is contained in:
2022-05-18 23:03:23 +08:00
parent 762765f870
commit c915db3116
28 changed files with 348 additions and 73 deletions

View File

@@ -149,6 +149,7 @@
<include>*.properties</include>
<include>static/**</include>
<include>templates/**</include>
<include>bqb/**</include>
</includes>
<filtering>false</filtering>
</resource>

View File

@@ -0,0 +1,12 @@
package com.quinn.common;
import lombok.Data;
@Data
public class ExpBucket {
String name;
String category;
String url;
}

View File

@@ -7,6 +7,8 @@ public interface QuinnConstant {
String LINK_KEY_WORD = ",";
String LINK_DATE_STR = "_";
String LINK_LOVE_STR = "#";
/**
* REDIS PATTEN
*/

View File

@@ -3,9 +3,13 @@ package com.quinn.controller;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.quinn.common.ExpBucket;
import com.quinn.intergration.BucketImage;
import com.quinn.pojo.About;
import com.quinn.service.AboutService;
import com.quinn.utils.QuinnUtils;
import com.quinn.vo.FindNavReq;
import com.quinn.vo.MyPageParam;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
@@ -13,6 +17,7 @@ import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
import java.util.List;
/**
@@ -41,16 +46,36 @@ public class AboutController extends BaseModelController {
return "page/about";
}
@GetMapping("/favor")
public String favor(){
return "favor";
}
@GetMapping("/guess")
public String guess(){
return "cimi/guess";
}
// 列表展示
@GetMapping("/favor")
public String sourceList(Model model) throws IOException {
MyPageParam pageParam = new MyPageParam(1,24);
List<ExpBucket> recordList = aboutService.listExp(null,pageParam);
model.addAttribute("recordList",recordList);
model.addAttribute("pageParam",pageParam);
return "page/favor";
}
@PostMapping("/favor")
public String blogListPage(FindNavReq findNavReq, Model model) throws IOException {
int page = findNavReq.getPageNum();
int limit = findNavReq.getLimit();
if (findNavReq.getPageNum() < 1){
page = 1;
}
MyPageParam pageParam = new MyPageParam(page,limit);
List<ExpBucket> recordList = aboutService.listExp(findNavReq.getFindWhat(),pageParam);
// 结果
model.addAttribute("recordList",recordList);
model.addAttribute("pageParam",pageParam);
return "page/favor::user_table_refresh";
}
@PostMapping("/about/append")
@PreAuthorize("hasAuthority('ADMIN')")
public String saveSay(About about){

View File

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.quinn.common.QuinnException;
import com.quinn.common.RoleType;
import com.quinn.intergration.AttrIcon;
import com.quinn.intergration.TodayLove;
import com.quinn.pojo.Invite;
import com.quinn.pojo.User;
import com.quinn.pojo.UserInfo;
@@ -22,6 +23,7 @@ import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
@@ -35,11 +37,15 @@ public class LoginController {
UserService userService;
@Autowired
UserInfoService userInfoService;
@Resource
TodayLove todayLove;
@GetMapping({"/","/index","/source/view/index",
"/blog/read/index"
})
public String index(){
public String index(Model model) throws IOException {
// 每日情话
model.addAttribute("LoveList",todayLove.getTodayLoveStr());
return "index";
}

View File

@@ -51,7 +51,7 @@ public class CodeGenerator {
// 5、策略配置
StrategyConfig strategy = new StrategyConfig();
strategy.setInclude("qn_email");//设置要映射的表名
strategy.setInclude("qn_bucket_url");//设置要映射的表名
strategy.setNaming(NamingStrategy.underline_to_camel);//数据库表映射到实体的命名策略
strategy.setTablePrefix("qn_");//设置表前缀不生成

View File

@@ -0,0 +1,65 @@
package com.quinn.intergration;
import com.fasterxml.jackson.core.type.TypeReference;
import com.quinn.common.ExpBucket;
import com.quinn.utils.JsonUtils;
import com.quinn.vo.MyPageParam;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ResourceUtils;
import org.springframework.util.StringUtils;
import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Component
public class BucketImage implements InitializingBean {
Map<String,String> dictionary = new HashMap<>();
public List<ExpBucket> listExp(String findWhat, MyPageParam myPageParam) throws IOException {
List<ExpBucket> result = new ArrayList<>();
if (CollectionUtils.isEmpty(dictionary)){
makeDictionary();
}
List<String> resultAll = dictionary.keySet().stream().filter(x ->
StringUtils.isEmpty(findWhat) ? true : x.contains(findWhat)).collect(Collectors.toList());
myPageParam.setTotal(resultAll.size());
int pageNum = myPageParam.getPageNum();
for (int i = 0;i<myPageParam.getSize(); i++){
if (pageNum + i >= myPageParam.getTotal()){
break;
}
ExpBucket expBucket = new ExpBucket();
expBucket.setName(resultAll.get(pageNum + i));
expBucket.setUrl(dictionary.get(resultAll.get(pageNum + i)));
result.add(expBucket);
}
return result;
}
@Override
public void afterPropertiesSet() throws Exception {
makeDictionary();
}
private void makeDictionary() throws IOException {
File file = ResourceUtils.getFile("classpath:bqb/image.json");
InputStreamReader insReader = new InputStreamReader(
new FileInputStream(file), "UTF-8");
BufferedReader bufReader = new BufferedReader(insReader);
String json = bufReader.readLine();
bufReader.close();
insReader.close();
List<ExpBucket> decode = JsonUtils.decode(json, new TypeReference<List<ExpBucket>>() {
});
for (ExpBucket expBucket : decode) {
this.dictionary.put(expBucket.getName(),expBucket.getUrl());
}
}
}

View File

@@ -0,0 +1,49 @@
package com.quinn.intergration;
import com.fasterxml.jackson.core.type.TypeReference;
import com.quinn.common.QuinnConstant;
import com.quinn.utils.JsonUtils;
import com.quinn.utils.QuinnUtils;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import org.springframework.util.ResourceUtils;
import java.io.*;
import java.util.*;
@Component
public class TodayLove implements InitializingBean {
private List<String> dictionary = new ArrayList<>();
public List<String> getTodayLoveStr() throws IOException {
if (CollectionUtils.isEmpty(dictionary)){
makeDictionary();
}
int days = QuinnUtils.differentDays(new Date(2022, 4, 1), new Date());
int i = days % dictionary.size();
String todayStr = dictionary.get(i);
String[] split = todayStr.split(QuinnConstant.LINK_LOVE_STR);
return Arrays.asList(split);
}
@Override
public void afterPropertiesSet() throws Exception {
makeDictionary();
}
private void makeDictionary() throws IOException {
File file = ResourceUtils.getFile("classpath:bqb/love.json");
InputStreamReader insReader = new InputStreamReader(
new FileInputStream(file), "UTF-8");
BufferedReader bufReader = new BufferedReader(insReader);
String json = bufReader.readLine();
bufReader.close();
insReader.close();
List<String> decode = JsonUtils.decode(json, new TypeReference<List<String>>() {
});
dictionary = decode;
}
}

View File

@@ -1,7 +1,12 @@
package com.quinn.service;
import com.quinn.common.ExpBucket;
import com.quinn.pojo.About;
import com.baomidou.mybatisplus.extension.service.IService;
import com.quinn.vo.MyPageParam;
import java.io.IOException;
import java.util.List;
/**
* <p>
@@ -13,4 +18,6 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface AboutService extends IService<About> {
List<ExpBucket> listExp(String findWhat, MyPageParam pageParam) throws IOException;
}

View File

@@ -1,11 +1,18 @@
package com.quinn.service.impl;
import com.quinn.common.ExpBucket;
import com.quinn.intergration.BucketImage;
import com.quinn.pojo.About;
import com.quinn.mapper.AboutMapper;
import com.quinn.service.AboutService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.quinn.vo.MyPageParam;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.io.*;
import java.util.List;
/**
* <p>
* 服务实现类
@@ -17,4 +24,11 @@ import org.springframework.stereotype.Service;
@Service
public class AboutServiceImpl extends ServiceImpl<AboutMapper, About> implements AboutService {
@Resource
BucketImage bucketImage;
@Override
public List<ExpBucket> listExp(String findWhat, MyPageParam pageParam) throws IOException {
return bucketImage.listExp(findWhat,pageParam);
}
}

View File

@@ -2,6 +2,7 @@ package com.quinn.utils;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Random;
import java.util.UUID;
@@ -39,4 +40,42 @@ public class QuinnUtils {
return sb.toString();
}
/**
* date2比date1多的天数
* @param date1
* @param date2
* @return
*/
public static int differentDays(Date date1,Date date2) {
Calendar cal1 = Calendar.getInstance();
cal1.setTime(date1);
Calendar cal2 = Calendar.getInstance();
cal2.setTime(date2);
int day1= cal1.get(Calendar.DAY_OF_YEAR);
int day2 = cal2.get(Calendar.DAY_OF_YEAR);
int year1 = cal1.get(Calendar.YEAR);
int year2 = cal2.get(Calendar.YEAR);
if(year1 != year2) {//同一年
int timeDistance = 0 ;
for(int i = year1 ; i < year2 ; i ++)
{
if(i%4==0 && i%100!=0 || i%400==0) //闰年
{
timeDistance += 366;
}
else //不是闰年
{
timeDistance += 365;
}
}
return timeDistance + (day2-day1) ;
} else {// 不同年
System.out.println("判断day2 - day1 : " + (day2-day1));
return day2-day1;
}
}
}

View File

@@ -16,7 +16,7 @@ public class FindNavReq {
@ApiModelProperty(value = "个数")
private int limit;
@ApiModelProperty(value = "用户编号")
@ApiModelProperty(value = "查询字符串")
private String findWhat;
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -4,12 +4,12 @@
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Quinn-词谜</title>
<script type="module" crossorigin src="./assets/index.63d49f8b.js"></script>
<link rel="modulepreload" th:href="@{/assets/vendor.1184b31e.js}">
<script type="module" crossorigin src="./assets/index.a6696717.js"></script>
<link rel="modulepreload" th:href="@{/assets/vendor.e8eab7c4.js}">
<link rel="modulepreload" th:href="@{/assets/polyphones.f3f0c057.js}">
<link rel="modulepreload" th:href="@{/assets/idioms.a01375e9.js}">
<link rel="modulepreload" th:href="@{/assets/locale.6dea3a1e.js}">
<link rel="stylesheet" th:href="@{/assets/index.7414fc6a.css}">
<link rel="stylesheet" th:href="@{/assets/index.de3d343a.css}">
</head>
<body>
<div id="app"></div>

View File

@@ -33,7 +33,7 @@
<a class="nav-link" th:href="@{/source}">资源</a>
</li>
<li th:class="${activeUrl=='favor'?'nav-item active':'nav-item'}">
<a class="nav-link" th:href="@{/favor}">情话</a>
<a class="nav-link" th:href="@{/favor}">斗图</a>
</li>
<li th:class="${activeUrl=='guess'?'nav-item active':'nav-item'}">
<a class="nav-link" th:href="@{/guess}">词谜</a>

View File

@@ -1,31 +0,0 @@
<!doctype html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>土味情话-Quinn</title>
<link rel="stylesheet" th:href="@{/bootstrap/css/bootstrap.min.css}">
<link rel="stylesheet" th:href="@{/css/backgroud.css}">
</head>
<div th:replace="~{common/header::header(activeUrl='favor')}"></div>
<main role="main">
<div class="container">
<div class="alert alert-primary mt-3" role="alert">
选自@杨二-土味情话生成器。可以点<a target="_blank" class="text-danger font-weight-bold text-decoration-none" href="https://yangerxiao.com">此处</a>访问作者首页
</div>
<iframe height="1080px" width="100%" src="https://works.yangerxiao.com/honeyed-words-generator/"></iframe>
</div>
</main>
<div th:replace="~{common/footer::footer}"></div>
<div class="to-top">
<img class="d-block pl-2" src="/images/logo/qrcode.png" width="50" height="50">
<a class="badge badge-light">返回顶部</a>
</div>
<script th:src="@{/js/jquery-3.5.1.min.js}"></script>
<script th:src="@{/bootstrap/js/bootstrap.bundle.min.js}"></script>
<script th:src="@{/js/toTop.js}"></script>
<script th:src="@{/js/jquery-ui.min.js}"></script>
<script th:src="@{/live/js/addlive2d.js}"></script>
</body>
</html>

View File

@@ -13,9 +13,6 @@
background-size: 100% 100%;
height: 400px;
}
.inverted{
background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAHklEQVQImWNkYGBgYGD4//8/A5wF5SBYyAr+//8PAPOCFO0Q2zq7AAAAAElFTkSuQmCC) repeat;text-shadow: 5px -5px black, 4px -4px white;font-weight: bold;-webkit-text-fill-color: transparent;-webkit-background-clip: text
}
.invertedContent p{
text-align: center;
background: url(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAIAAAAmkwkpAAAAHklEQVQImWNkYGBgYGD4//8/A5wF5SBYyAr+//8PAPOCFO0Q2zq7AAAAAElFTkSuQmCC) repeat;text-shadow: 2px -2px black, 1px -1px white;font-weight: bold;-webkit-text-fill-color: transparent;-webkit-background-clip: text
@@ -90,8 +87,15 @@
</div>
</div>
</div>
<div class="alert alert-danger mt-3" role="alert">
<span th:each="love:${LoveList}">
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-chat-square-heart-fill" viewBox="0 0 16 16">
<path d="M2 0a2 2 0 0 0-2 2v8a2 2 0 0 0 2 2h2.5a1 1 0 0 1 .8.4l1.9 2.533a1 1 0 0 0 1.6 0l1.9-2.533a1 1 0 0 1 .8-.4H14a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2Zm6 3.993c1.664-1.711 5.825 1.283 0 5.132-5.825-3.85-1.664-6.843 0-5.132Z"/>
</svg>
[[${love}]]
</span>
</div>
<div id="register" class="mt-3">
</div>
</div>
</main>

View File

@@ -44,11 +44,9 @@
style="font-family:'Microsoft YaHei';">
<tbody>
<tr>
<svg viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<path v-if="tone === 1" d="M3.35 8C2.60442 8 2 8.60442 2 9.35V10.35C2 11.0956 2.60442 11.7 3.35 11.7H17.35C18.0956 11.7 18.7 11.0956 18.7 10.35V9.35C18.7 8.60442 18.0956 8 17.35 8H3.35Z" fill="currentColor" />
<path v-if="tone === 2" d="M16.581 3.71105C16.2453 3.27254 15.6176 3.18923 15.1791 3.52498L3.26924 12.6439C2.83073 12.9796 2.74743 13.6073 3.08318 14.0458L4.29903 15.6338C4.63478 16.0723 5.26244 16.1556 5.70095 15.8199L17.6108 6.70095C18.0493 6.3652 18.1327 5.73754 17.7969 5.29903L16.581 3.71105Z" fill="currentColor" />
<path v-if="tone === 3" d="M1.70711 7.70712C1.31658 7.3166 1.31658 6.68343 1.70711 6.29291L2.41421 5.5858C2.80474 5.19528 3.4379 5.19528 3.82843 5.5858L9.31502 11.0724C9.70555 11.4629 10.3387 11.4629 10.7292 11.0724L16.2158 5.5858C16.6064 5.19528 17.2395 5.19528 17.63 5.5858L18.3372 6.29291C18.7277 6.68343 18.7277 7.3166 18.3372 7.70712L10.7292 15.315C10.3387 15.7056 9.70555 15.7056 9.31502 15.315L1.70711 7.70712Z" fill="currentColor" />
<path v-if="tone === 4" d="M4.12282 3.71105C4.45857 3.27254 5.08623 3.18923 5.52474 3.52498L17.4346 12.6439C17.8731 12.9796 17.9564 13.6073 17.6207 14.0458L16.4048 15.6338C16.0691 16.0723 15.4414 16.1556 15.0029 15.8199L3.09303 6.70095C2.65452 6.3652 2.57122 5.73754 2.90697 5.29903L4.12282 3.71105Z" fill="currentColor" />
<svg viewBox="0 0 20 6" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="3.5" cy="3" r="2.5" fill="currentColor" />
<circle cx="16.5" cy="3" r="2.5" fill="currentColor" />
</svg>
<div style="width:800px;margin:0 auto;text-align:left;">
<table width="944px" style="margin: 0 auto">

View File

@@ -0,0 +1,84 @@
<!doctype html>
<html lang="en" xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>免费表情包-Quinn</title>
<link rel="stylesheet" th:href="@{/bootstrap/css/bootstrap.min.css}">
<link rel="stylesheet" th:href="@{/css/backgroud.css}">
</head>
<div th:replace="~{common/header::header(activeUrl='favor')}"></div>
<main role="main">
<div class="container">
<!-- <div class="alert alert-primary mt-3" role="alert">-->
<!-- 选自@杨二-土味情话生成器。可以点<a target="_blank" class="text-danger font-weight-bold text-decoration-none" href="https://yangerxiao.com">此处</a>访问作者首页-->
<!-- </div>-->
<!-- <iframe height="1080px" width="100%" src="https://works.yangerxiao.com/honeyed-words-generator/"></iframe>-->
<div class="my-3 p-3 bg-white rounded shadow-sm">
<div th:fragment="user_table_refresh" th:id="id_user_table_refresh">
<div class="row border-bottom border-gray pb-2 mt-1">
<div class="col-md-6">表情数据来源自GITHUB</div>
<input id="findBucket" th:value="${findBucket}" class="col-md-3 form-control" placeholder="请输入要查询的表情">
<button class="ml-2 col-md-2 btn-sm btn-dark" onclick="navChange(-777)" >找一找</button>
</div>
<div class="row">
<div class="col-md-3 small pl-2 border-bottom border-gray pb-2 pt-2" th:each="record:${recordList}">
<!-- <p th:text="${record.getName()}" class="badge badge-success"></p>-->
<img width="200px" height="200px" th:src="${record.getUrl()}"/>
</div>
</div>
<!--分页-->
<nav aria-label="Page navigation example" class="mt-4">
<ul class="pagination justify-content-center pagination-sm">
<li th:class="${pageParam.hasPrevious()==true?'page-item':'page-item disabled'}">
<a class="page-link" href="javascript:navChange(-1);" tabindex="">Previous</a>
</li>
<li class="page-item" th:if="${pageParam.hasPrevious()}">
<a class="page-link" href="javascript:navChange(-1);" th:text="${pageParam.getCurrent()-1}"></a>
</li>
<li class="page-item active">
<a id = "current" class="page-link" href="javascript:navChange(0);" th:text="${pageParam.getCurrent()}"></a>
</li>
<li class="page-item" th:if="${pageParam.hasNext()}">
<a class="page-link" href="javascript:navChange(1);" th:text="${pageParam.getCurrent()+1}"></a>
</li>
<li th:class="${pageParam.hasNext()==true?'page-item':'page-item disabled'}">
<a class="page-link" href="javascript:navChange(1);">Next</a>
</li>
</ul>
</nav>
</div>
</div>
</div>
</main>
<div th:replace="~{common/footer::footer}"></div>
<div class="to-top">
<img class="d-block pl-2" src="/images/logo/qrcode.png" width="50" height="50">
<a class="badge badge-light">返回顶部</a>
</div>
<script th:src="@{/js/jquery-3.5.1.min.js}"></script>
<script th:src="@{/bootstrap/js/bootstrap.bundle.min.js}"></script>
<script th:src="@{/js/toTop.js}"></script>
<script th:src="@{/js/jquery-ui.min.js}"></script>
<script th:src="@{/live/js/addlive2d.js}"></script>
<script type="text/javascript">
function navChange(page){
var current = $('#current').text();
var pageNum = parseInt(current) + page;
var findWhat = $('#findBucket').val();
if (-777 == page){
pageNum = 1;
}
$.ajax({
url: "/favor",
async: false,
type: "post",
data: {"findWhat":findWhat,"pageNum": pageNum, "limit": 24},
success: function (data) {
$('#id_user_table_refresh').html(data);
}
});
}
</script>
</body>
</html>

View File

@@ -83,7 +83,7 @@
<span>按照资源名称进行模糊查询,如需含内容模糊,您可以使用【↑全站搜索↑】</span>
</div>
<div class="p-3 my-3 bg-white rounded">
<form action="javascript:navChange(0);" method="post">
<form action="javascript:navChange(-777);" method="post">
<div class="form-row">
<div class="col-md-12 mt-2">
<label class="sr-only" for="name">KEYWORD</label>
@@ -134,6 +134,9 @@
var category = $('#category').val();
var current = $('#current').text();
var pageNum = parseInt(current) + page;
if (-777 == page){
pageNum = 1;
}
$.ajax({
url: "/source",
async: false,

View File

@@ -1,20 +1,21 @@
package com.quinn.test;
import com.fasterxml.jackson.core.type.TypeReference;
import com.quinn.QuinnApplication;
import com.quinn.common.EmailType;
import com.quinn.common.QuinnConstant;
import com.quinn.common.ExpBucket;
import com.quinn.intergration.SendBMail;
import com.quinn.pojo.Source;
import com.quinn.service.SourceService;
import com.quinn.utils.CovertEmojStr;
import com.quinn.utils.JsonUtils;
import com.quinn.utils.RedisUtils;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import org.springframework.util.ResourceUtils;
import javax.annotation.Resource;
import java.io.*;
import java.util.List;
@RunWith(SpringRunner.class)
@@ -30,11 +31,6 @@ public class RedisTest {
@Resource
SendBMail sendBMail;
@Test
public void updateViewTask(){
}
@Test
public void sendEmail(){
// sendBMail.sendOneParamMail(EmailType.SUCCESS,"1234","540344226@qq.com");