1.0版本完成

This commit is contained in:
hupeng
2019-11-06 21:34:55 +08:00
commit a7f03930ca
644 changed files with 40190 additions and 0 deletions

View File

@ -0,0 +1,41 @@
package co.yixiang.utils;
/**
* 支付状态
* @author zhengjie
* @date 2018/08/01 16:45:43
*/
public enum AliPayStatusEnum {
/**
* 交易成功
*/
FINISHED("交易成功", "TRADE_FINISHED"),
/**
* 支付成功
*/
SUCCESS("支付成功", "TRADE_SUCCESS"),
/**
* 交易创建
*/
BUYER_PAY("交易创建", "WAIT_BUYER_PAY"),
/**
* 交易关闭
*/
CLOSED("交易关闭", "TRADE_CLOSED");
private String name;
private String value;
AliPayStatusEnum(String name, String value) {
this.name = name;
this.value = value;
}
public String getValue() {
return value;
}
}

View File

@ -0,0 +1,79 @@
package co.yixiang.utils;
import cn.hutool.core.util.StrUtil;
import com.alipay.api.AlipayApiException;
import com.alipay.api.internal.util.AlipaySignature;
import co.yixiang.domain.AlipayConfig;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletRequest;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
/**
* 支付宝工具类
* @author zhengjie
* @date 2018/09/30 14:04:35
*/
@Component
public class AlipayUtils {
/**
* 生成订单号
* @return
*/
public String getOrderCode() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
int a = (int)(Math.random() * 9000.0D) + 1000;
System.out.println(a);
Date date = new Date();
String str = sdf.format(date);
String[] split = str.split("-");
String s = split[0] + split[1] + split[2];
String[] split1 = s.split(" ");
String s1 = split1[0] + split1[1];
String[] split2 = s1.split(":");
String s2 = split2[0] + split2[1] + split2[2] + a;
return s2;
}
/**
* 校验签名
* @param request
* @return
*/
public boolean rsaCheck(HttpServletRequest request, AlipayConfig alipay){
/**
* 获取支付宝POST过来反馈信息
*/
Map<String,String> params = new HashMap<>(1);
Map requestParams = request.getParameterMap();
for (Iterator iter = requestParams.keySet().iterator(); iter.hasNext();) {
String name = (String) iter.next();
String[] values = (String[]) requestParams.get(name);
String valueStr = "";
for (int i = 0; i < values.length; i++) {
valueStr = (i == values.length - 1) ? valueStr + values[i]
: valueStr + values[i] + ",";
}
params.put(name, valueStr);
}
try {
boolean verifyResult = AlipaySignature.rsaCheckV1(params,
alipay.getPublicKey(),
alipay.getCharset(),
alipay.getSignType());
return verifyResult;
} catch (AlipayApiException e) {
return false;
}
}
public boolean isEmpty(String str){
return StrUtil.isEmpty(str);
}
}

View File

@ -0,0 +1,58 @@
package co.yixiang.utils;
import com.qiniu.storage.Region;
import java.text.SimpleDateFormat;
import java.util.Date;
/**
* 七牛云存储工具类
* @author Zheng Jie
* @date 2018-12-31
*/
public class QiNiuUtil {
public static final String HUAD = "华东";
public static final String HUAB = "华北";
public static final String HUAN = "华南";
public static final String BEIM = "北美";
/**
* 得到机房的对应关系
* @param zone
* @return
*/
public static Region getRegion(String zone){
if(HUAD.equals(zone)){
return Region.huadong();
} else if(HUAB.equals(zone)){
return Region.huabei();
} else if(HUAN.equals(zone)){
return Region.huanan();
} else if (BEIM.equals(zone)){
return Region.beimei();
// 否则就是东南亚
} else {
return Region.qvmHuadong();
}
}
/**
* 默认不指定key的情况下以文件内容的hash值作为文件名
* @param file
* @return
*/
public static String getKey(String file){
StringBuffer key = new StringBuffer(FileUtil.getFileNameNoEx(file));
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
Date date = new Date();
key.append("-");
key.append(sdf.format(date));
key.append(".");
key.append(FileUtil.getExtensionName(file));
return key.toString();
}
}