sj
2 years ago
31 changed files with 422 additions and 86 deletions
@ -0,0 +1,18 @@ |
|||||||
|
package co.yixiang.modules.evaluation.domain; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
@Data |
||||||
|
public class EditableTabs { |
||||||
|
// {title: '初始栏',
|
||||||
|
// name: '0',
|
||||||
|
// content: '产品展示栏',
|
||||||
|
// configuration:'富文本框'
|
||||||
|
//}
|
||||||
|
private String title; |
||||||
|
private String name; |
||||||
|
private String content; |
||||||
|
private String configuration; |
||||||
|
|
||||||
|
} |
@ -1,6 +0,0 @@ |
|||||||
package co.yixiang.modules.inform.service; |
|
||||||
|
|
||||||
public interface SendMsgService { |
|
||||||
//type:0 支付 1:申请退款
|
|
||||||
String inform(long orderId,int type); |
|
||||||
} |
|
@ -0,0 +1,20 @@ |
|||||||
|
package co.yixiang.modules.store.service.dto; |
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data; |
||||||
|
|
||||||
|
/** |
||||||
|
* @author ssj |
||||||
|
* @date 2022-10-26 |
||||||
|
*/ |
||||||
|
@Data |
||||||
|
public class YxStoreBrandNameDto { |
||||||
|
// 商品品牌表ID
|
||||||
|
private Integer id; |
||||||
|
|
||||||
|
// 品牌名称
|
||||||
|
private String brandName; |
||||||
|
|
||||||
|
// 品牌图标
|
||||||
|
private String pic; |
||||||
|
} |
@ -0,0 +1,177 @@ |
|||||||
|
package co.yixiang.modules.store.service.impl; |
||||||
|
|
||||||
|
/** |
||||||
|
* 排序算法 |
||||||
|
* @author sj |
||||||
|
* @creation date 2022-10-26 |
||||||
|
*/ |
||||||
|
|
||||||
|
import java.util.ArrayList; |
||||||
|
import java.util.HashMap; |
||||||
|
import java.util.List; |
||||||
|
import java.util.Map; |
||||||
|
|
||||||
|
/** 首字母排序分类 **/ |
||||||
|
public class Sort { |
||||||
|
|
||||||
|
/** |
||||||
|
* 字母大小写标识 capital:大写 |
||||||
|
*/ |
||||||
|
private static final String Letter_flag_capital = "capital"; |
||||||
|
|
||||||
|
/** |
||||||
|
* 排序的方法 |
||||||
|
* @param list 需要排序的List集合 |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public Map<String, List<String>> sort(List<String> list){ |
||||||
|
Map<String,List<String>> map = new HashMap<String,List<String>>(); |
||||||
|
List<String> arraylist = new ArrayList<String>(); |
||||||
|
String[] alphatableb = |
||||||
|
{ |
||||||
|
"A", "B", "C", "D", "E", "F", "G", "H", "I", |
||||||
|
"J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z" |
||||||
|
}; |
||||||
|
for(String a:alphatableb){ |
||||||
|
for(int i=0;i<list.size();i++){//为了排序都返回大写字母
|
||||||
|
if(a.equals(String2AlphaFirst(list.get(i).toString(),Letter_flag_capital))){ |
||||||
|
arraylist.add(list.get(i).toString()); |
||||||
|
} |
||||||
|
} |
||||||
|
map.put(a,arraylist); |
||||||
|
arraylist=new ArrayList<String>(); |
||||||
|
} |
||||||
|
return map; |
||||||
|
} |
||||||
|
|
||||||
|
//字母Z使用了两个标签,这里有27个值
|
||||||
|
//i, u, v都不做声母, 跟随前面的字母
|
||||||
|
private char[] chartable = |
||||||
|
{ |
||||||
|
'啊', '芭', '擦', '搭', '蛾', '发', '噶', '哈', '哈', |
||||||
|
'击', '喀', '垃', '妈', '拿', '哦', '啪', '期', '然', |
||||||
|
'撒', '塌', '塌', '塌', '挖', '昔', '压', '匝', '座' |
||||||
|
}; |
||||||
|
|
||||||
|
// 大写字母匹配数组
|
||||||
|
private char[] alphatableb = |
||||||
|
{ |
||||||
|
'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', |
||||||
|
'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' |
||||||
|
}; |
||||||
|
|
||||||
|
// 小写字母匹配数组
|
||||||
|
private char[] alphatables = |
||||||
|
{ |
||||||
|
'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', |
||||||
|
'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z' |
||||||
|
}; |
||||||
|
|
||||||
|
private int[] table = new int[27]; //初始化
|
||||||
|
{ |
||||||
|
for (int i = 0; i < 27; ++i) { |
||||||
|
table[i] = gbValue(chartable[i]); |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* 主函数,输入字符,得到他的声母,英文字母返回对应的大小写字母,英文字母返回对应的大小写字母 |
||||||
|
* @param ch 字符 |
||||||
|
* @param type 大小写类型标识 |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public char Char2Alpha(char ch,String type) { |
||||||
|
if (ch >= 'a' && ch <= 'z') |
||||||
|
return (char) (ch - 'a' + 'A');//为了按字母排序先返回大写字母
|
||||||
|
|
||||||
|
if (ch >= 'A' && ch <= 'Z') |
||||||
|
return ch; |
||||||
|
int gb = gbValue(ch); |
||||||
|
if (gb < table[0]) |
||||||
|
return '0'; |
||||||
|
|
||||||
|
int i; |
||||||
|
for (i = 0; i < 26; ++i) { |
||||||
|
if (match(i, gb)) |
||||||
|
break; |
||||||
|
} |
||||||
|
|
||||||
|
if (i >= 26){ |
||||||
|
return '0';} |
||||||
|
else{ |
||||||
|
if(Letter_flag_capital.equals(type)){//大写
|
||||||
|
return alphatableb[i]; |
||||||
|
}else{//小写
|
||||||
|
return alphatables[i]; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* 根据一个包含汉字的字符串返回一个汉字拼音首字母的字符串 |
||||||
|
* @param SourceStr 目标字符串 |
||||||
|
* @param type 大小写类型 |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public String String2Alpha(String SourceStr,String type) { |
||||||
|
String Result = ""; |
||||||
|
int StrLength = SourceStr.length(); |
||||||
|
int i; |
||||||
|
try { |
||||||
|
for (i = 0; i < StrLength; i++) { |
||||||
|
Result += Char2Alpha(SourceStr.charAt(i),type); |
||||||
|
} |
||||||
|
} catch (Exception e) { |
||||||
|
Result = ""; |
||||||
|
} |
||||||
|
return Result; |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* 根据一个包含汉字的字符串返回第一个汉字拼音首字母的字符串 |
||||||
|
* @param SourceStr 目标字符串 |
||||||
|
* @param type 大小写类型 |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
public String String2AlphaFirst(String SourceStr,String type) { |
||||||
|
String Result = ""; |
||||||
|
try { |
||||||
|
Result += Char2Alpha(SourceStr.charAt(0),type); |
||||||
|
} catch (Exception e) { |
||||||
|
Result = ""; |
||||||
|
} |
||||||
|
return Result; |
||||||
|
} |
||||||
|
private boolean match(int i, int gb) { |
||||||
|
if (gb < table[i]) |
||||||
|
return false; |
||||||
|
int j = i + 1; |
||||||
|
|
||||||
|
//字母Z使用了两个标签
|
||||||
|
while (j < 26 && (table[j] == table[i])) |
||||||
|
++j; |
||||||
|
if (j == 26) |
||||||
|
return gb <= table[j]; |
||||||
|
else |
||||||
|
return gb < table[j]; |
||||||
|
} |
||||||
|
|
||||||
|
/** |
||||||
|
* 取出汉字的编码 |
||||||
|
* @param ch |
||||||
|
* @return |
||||||
|
*/ |
||||||
|
private int gbValue(char ch) { |
||||||
|
String str = new String(); |
||||||
|
str += ch; |
||||||
|
try { |
||||||
|
byte[] bytes = str.getBytes("GBK"); |
||||||
|
if (bytes.length < 2) |
||||||
|
return 0; |
||||||
|
return (bytes[0] << 8 & 0xff00) + (bytes[1] & |
||||||
|
0xff); |
||||||
|
} catch (Exception e) { |
||||||
|
return 0; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue