yonge 3 năm trước cách đây
mục cha
commit
78089d97dd

+ 0 - 15
mec-student/src/main/java/com/ym/mec/student/StudentApplication.java

@@ -2,10 +2,6 @@ package com.ym.mec.student;
 
 import javax.servlet.Filter;
 
-import com.huifu.adapay.Adapay;
-import com.huifu.adapay.model.MerConfig;
-import com.ym.mec.thirdparty.adapay.ConfigInit;
-import com.ym.mec.biz.service.NotifyCallback;
 import org.mybatis.spring.annotation.MapperScan;
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -60,15 +56,4 @@ public class StudentApplication {
 		return registration;
 	}
 
-	@Bean
-	public static void startMqtt() {
-		MerConfig merConfig = ConfigInit.merConfig;
-		NotifyCallback notifyCallback = new NotifyCallback();
-		try {
-			Adapay.startMqttListener(merConfig, notifyCallback);
-		} catch (Exception e) {
-			e.printStackTrace();
-		}
-	}
-
 }

+ 8 - 16
mec-thirdparty/pom.xml

@@ -66,26 +66,18 @@
 			<scope>system</scope>
 			<systemPath>${project.basedir}/libs/SADK-3.2.5.2.jar</systemPath>
 		</dependency>
+
 		<dependency>
-			<groupId>adapay</groupId>
-			<artifactId>adapay-java-sdk</artifactId>
-			<version>1.1.3</version>
-			<scope>system</scope>
-			<systemPath>${project.basedir}/libs/adapay-java-sdk-1.1.3.jar
-			</systemPath>
-		</dependency>
-		<dependency>
-			<groupId>adapay.core</groupId>
+			<groupId>com.huifu.adapay.core</groupId>
 			<artifactId>adapay-core-sdk</artifactId>
-			<version>1.1.3</version>
-			<scope>system</scope>
-			<systemPath>${project.basedir}/libs/adapay-core-sdk-1.1.3.jar
-			</systemPath>
+			<version>1.2.10</version>
 		</dependency>
+	
+		<!-- https://mvnrepository.com/artifact/com.huifu.adapay/adapay-java-sdk -->
 		<dependency>
-			<groupId>org.eclipse.paho</groupId>
-			<artifactId>org.eclipse.paho.client.mqttv3</artifactId>
-			<version>1.2.0</version>
+			<groupId>com.huifu.adapay</groupId>
+			<artifactId>adapay-java-sdk</artifactId>
+			<version>1.2.10</version>
 		</dependency>
 		
 		<dependency>

+ 1 - 1
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/AdapayInit.java

@@ -52,7 +52,7 @@ public class AdapayInit {
 			merConfig.setApiMockKey(adapayMerConfig.getMockApiKey());
 			merConfig.setRSAPrivateKey(adapayMerConfig.getRsaPrivateKey());
 			
-			configPathMap.put(adapayMerConfig.getMerCode(), merConfig);
+			configPathMap.put(adapayMerConfig.getMerchantKey(), merConfig);
 		}
 		
 		try {

+ 0 - 49
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/CorpMember.java

@@ -1,49 +0,0 @@
-package com.ym.mec.thirdparty.adapay;
-
-import java.io.File;
-import java.util.HashMap;
-import java.util.Map;
-
-import com.huifu.adapay.core.exception.BaseAdaPayException;
-
-/**
- * @author
- */
-public class CorpMember {
-
-    /**
-     * 查询 CorpMember
-     *
-     * @param member_id 待查询的member_id
-     * @return 查询的 CorpMember 对象
-     * @throws Exception 异常
-     */
-    public static Map<String, Object> executeQueryMember(String member_id) throws Exception {
-        Map<String, Object> memberParams = new HashMap<String, Object>(2);
-        memberParams.put("member_id", member_id);
-        memberParams.put("app_id", ConfigInit.appId);
-        return com.huifu.adapay.model.CorpMember.query(memberParams);
-    }
-
-    /**
-     * 创建 CorpMember
-     *
-     * @return 创建的CorpMember 对象
-     * @throws Exception 异常
-     */
-    public static Map<String, Object> executeCreateMember(Map<String, Object> info, File file) throws Exception {
-        Map<String, Object> memberParams = new HashMap<String, Object>();
-        memberParams.put("app_id", ConfigInit.appId);
-        memberParams.putAll(info);
-
-        Map<String, Object> member = com.huifu.adapay.model.CorpMember.create(memberParams, file);
-        String error_code = (String) member.get("error_code");
-        if (null != error_code) {
-            String errorMsg = (String) member.get("error_msg");
-            throw new BaseAdaPayException(errorMsg);
-        }
-        return member;
-    }
-
-
-}

+ 119 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/CorpMemberService.java

@@ -0,0 +1,119 @@
+package com.ym.mec.thirdparty.adapay;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.commons.lang3.StringUtils;
+
+import com.huifu.adapay.core.exception.BaseAdaPayException;
+import com.huifu.adapay.model.AdapayCommon;
+import com.huifu.adapay.model.CorpMember;
+import com.ym.mec.thirdparty.adapay.entity.EnterpriseUser;
+import com.ym.mec.thirdparty.exception.ThirdpartyException;
+
+/**
+ * 企业用户相关服务
+ */
+public class CorpMemberService {
+
+	public boolean create(String merchantKey, String appId, EnterpriseUser req) {
+
+		Map<String, Object> memberParams = new HashMap<String, Object>(2);
+		memberParams.put("member_id", req.getMemberId());
+		memberParams.put("app_id", appId);
+		memberParams.put("order_no", appId + "_" + System.currentTimeMillis());
+		memberParams.put("social_credit_code_expires", req.getSocialCreditCodeExpires());
+		memberParams.put("business_scope", req.getBusinessScope());
+		memberParams.put("name", req.getName());
+		memberParams.put("prov_code", req.getProvCode());
+		memberParams.put("area_code", req.getAreaCode());
+		memberParams.put("social_credit_code", req.getSocialCreditCode());
+		memberParams.put("legal_person", req.getLegalPerson());
+		memberParams.put("legal_cert_id", req.getLegalCertId());
+		memberParams.put("legal_cert_id_expires", req.getLegalCertIdExpires());
+		memberParams.put("legal_mp", req.getLegalMp());
+		memberParams.put("address", req.getAddress());
+		memberParams.put("bank_code", req.getBankCode());
+		memberParams.put("bank_acct_type", req.getBankAcctType());
+		memberParams.put("card_no", req.getCardNo());
+		memberParams.put("card_name", req.getCardName());
+		try {
+			Map<String, Object> resp = null;
+			if (StringUtils.isNotBlank(merchantKey)) {
+				resp = CorpMember.create(memberParams, req.getAttachFile(), merchantKey);
+			} else {
+				resp = CorpMember.create(memberParams, req.getAttachFile());
+			}
+		} catch (BaseAdaPayException e) {
+			new ThirdpartyException("创建企业用户失败:{}", e, e.getMessage());
+		}
+
+		return true;
+	}
+	
+	public boolean update(String merchantKey, String appId, EnterpriseUser req){
+		Map<String, Object> memberParams = new HashMap<String, Object>(2);
+		memberParams.put("member_id", req.getMemberId());
+		memberParams.put("app_id", appId);
+		memberParams.put("order_no", appId + "_" + System.currentTimeMillis());
+		memberParams.put("social_credit_code_expires", req.getSocialCreditCodeExpires());
+		memberParams.put("business_scope", req.getBusinessScope());
+		memberParams.put("name", req.getName());
+		memberParams.put("prov_code", req.getProvCode());
+		memberParams.put("area_code", req.getAreaCode());
+		memberParams.put("social_credit_code", req.getSocialCreditCode());
+		memberParams.put("legal_person", req.getLegalPerson());
+		memberParams.put("legal_cert_id", req.getLegalCertId());
+		memberParams.put("legal_cert_id_expires", req.getLegalCertIdExpires());
+		memberParams.put("legal_mp", req.getLegalMp());
+		memberParams.put("address", req.getAddress());
+		try {
+			Map<String, Object> resp = null;
+			if (StringUtils.isNotBlank(merchantKey)) {
+				resp = AdapayCommon.requestAdapayFile(memberParams, req.getAttachFile(), merchantKey);
+			} else {
+				resp = AdapayCommon.requestAdapayFile(memberParams, req.getAttachFile());
+			}
+		} catch (BaseAdaPayException e) {
+			new ThirdpartyException("修改企业用户信息失败:{}", e, e.getMessage());
+		}
+
+		return true;
+	}
+	
+	public EnterpriseUser query(String merchantKey, String appId, String memberId) {
+		Map<String, Object> memberParams = new HashMap<String, Object>(2);
+		memberParams.put("member_id", memberId);
+		memberParams.put("app_id", appId);
+		Map<String, Object> resp = null;
+		try {
+			if (StringUtils.isNotBlank(merchantKey)) {
+				resp = CorpMember.query(memberParams, merchantKey);
+			} else {
+				resp = CorpMember.query(memberParams);
+			}
+			if(StringUtils.equals(resp.get("status").toString(), "succeeded")){
+				EnterpriseUser  user = new EnterpriseUser();
+				user.setAddress(resp.get("address").toString());
+				user.setAreaCode(resp.get("area_code").toString());
+				user.setBusinessScope(resp.get("business_scope").toString());
+				user.setLegalCertId(resp.get("legal_cert_id").toString());
+				user.setLegalCertIdExpires(resp.get("legal_cert_id_expires").toString());
+				user.setLegalMp(resp.get("legal_mp").toString());
+				user.setLegalPerson(resp.get("legal_person").toString());
+				user.setMemberId(resp.get("member_id").toString());
+				user.setName(resp.get("name").toString());
+				user.setProvCode(resp.get("prov_code").toString());
+				user.setSocialCreditCode(resp.get("social_credit_code").toString());
+				user.setSocialCreditCodeExpires(resp.get("social_credit_code_expires").toString());
+				
+				return user;
+			}
+		} catch (BaseAdaPayException e) {
+			new ThirdpartyException("查询企业用户信息失败:{}", e, e.getMessage());
+		}
+
+		return null;
+	}
+	
+}

+ 6 - 5
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/entity/AdapayMerConfig.java

@@ -5,7 +5,7 @@ package com.ym.mec.thirdparty.adapay.entity;
  */
 public class AdapayMerConfig {
 	
-	private String merCode;
+	private String merchantKey;
 
 	private String apiKey;
 
@@ -47,11 +47,12 @@ public class AdapayMerConfig {
 		this.rsaPublicKey = rsaPublicKey;
 	}
 
-	public String getMerCode() {
-		return merCode;
+	public String getMerchantKey() {
+		return merchantKey;
 	}
 
-	public void setMerCode(String merCode) {
-		this.merCode = merCode;
+	public void setMerchantKey(String merchantKey) {
+		this.merchantKey = merchantKey;
 	}
+
 }

+ 244 - 0
mec-thirdparty/src/main/java/com/ym/mec/thirdparty/adapay/entity/EnterpriseUser.java

@@ -0,0 +1,244 @@
+package com.ym.mec.thirdparty.adapay.entity;
+
+import java.io.File;
+
+/**
+ * 企业用户对象
+ */
+public class EnterpriseUser {
+
+	/**
+	 * 商户下的用户id,只能为英文、数字或者下划线的一种或多种组合,保证在app_id下唯一
+	 */
+	private String memberId;
+
+	/**
+	 * 企业名称
+	 */
+	private String name;
+
+	/**
+	 * 省份编码
+	 */
+	private String provCode;
+
+	/**
+	 * 地区编码 
+	 */
+	private String areaCode;
+
+	/**
+	 * 统一社会信用码
+	 */
+	private String socialCreditCode;
+
+	/**
+	 * 统一社会信用证有效期
+	 */
+	private String socialCreditCodeExpires;
+
+	/**
+	 * 经营范围
+	 */
+	private String businessScope;
+
+	/**
+	 * 法人姓名
+	 */
+	private String legalPerson;
+
+	/**
+	 * 法人身份证号码
+	 */
+	private String legalCertId;
+
+	/**
+	 * 法人身份证有效期
+	 */
+	private String legalCertIdExpires;
+
+	/**
+	 * 法人手机号
+	 */
+	private String legalMp;
+
+	/**
+	 * 企业地址
+	 */
+	private String address;
+
+	/**
+	 * 上传附件,传入的中文文件名称为 UTF-8 字符集 URLEncode 编码后的字符串。
+	 * 内容须包含三证合一证件照、法人身份证正面照、法人身份证反面照、开户银行许可证照。 压缩 zip包后上传,最大限制为 9 M。
+	 */
+	private File attachFile;
+
+	/**
+	 * 银行代码,如果需要自动开结算账户,本字段必填
+	 */
+	private String bankCode;
+
+	/**
+	 * 银行账户类型:1-对公;2-对私,如果需要自动开结算账户,本字段必填
+	 */
+	private String bankAcctType;
+
+	/**
+	 * 银行卡号,如果需要自动开结算账户,本字段必填
+	 */
+	private String cardNo;
+
+	/**
+	 * 银行卡对应的户名,如果需要自动开结算账户,本字段必填;若银行账户类型是对公,必须与企业名称一致
+	 */
+	private String cardName;
+
+	/**
+	 * 异步通知地址,url为http/https路径,服务器POST回调,URL 上请勿附带参数
+	 */
+	private String notifyUrl;
+
+	public String getMemberId() {
+		return memberId;
+	}
+
+	public void setMemberId(String memberId) {
+		this.memberId = memberId;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getProvCode() {
+		return provCode;
+	}
+
+	public void setProvCode(String provCode) {
+		this.provCode = provCode;
+	}
+
+	public String getAreaCode() {
+		return areaCode;
+	}
+
+	public void setAreaCode(String areaCode) {
+		this.areaCode = areaCode;
+	}
+
+	public String getSocialCreditCode() {
+		return socialCreditCode;
+	}
+
+	public void setSocialCreditCode(String socialCreditCode) {
+		this.socialCreditCode = socialCreditCode;
+	}
+
+	public String getSocialCreditCodeExpires() {
+		return socialCreditCodeExpires;
+	}
+
+	public void setSocialCreditCodeExpires(String socialCreditCodeExpires) {
+		this.socialCreditCodeExpires = socialCreditCodeExpires;
+	}
+
+	public String getBusinessScope() {
+		return businessScope;
+	}
+
+	public void setBusinessScope(String businessScope) {
+		this.businessScope = businessScope;
+	}
+
+	public String getLegalPerson() {
+		return legalPerson;
+	}
+
+	public void setLegalPerson(String legalPerson) {
+		this.legalPerson = legalPerson;
+	}
+
+	public String getLegalCertId() {
+		return legalCertId;
+	}
+
+	public void setLegalCertId(String legalCertId) {
+		this.legalCertId = legalCertId;
+	}
+
+	public String getLegalCertIdExpires() {
+		return legalCertIdExpires;
+	}
+
+	public void setLegalCertIdExpires(String legalCertIdExpires) {
+		this.legalCertIdExpires = legalCertIdExpires;
+	}
+
+	public String getLegalMp() {
+		return legalMp;
+	}
+
+	public void setLegalMp(String legalMp) {
+		this.legalMp = legalMp;
+	}
+
+	public String getAddress() {
+		return address;
+	}
+
+	public void setAddress(String address) {
+		this.address = address;
+	}
+
+	public File getAttachFile() {
+		return attachFile;
+	}
+
+	public void setAttachFile(File attachFile) {
+		this.attachFile = attachFile;
+	}
+
+	public String getBankCode() {
+		return bankCode;
+	}
+
+	public void setBankCode(String bankCode) {
+		this.bankCode = bankCode;
+	}
+
+	public String getBankAcctType() {
+		return bankAcctType;
+	}
+
+	public void setBankAcctType(String bankAcctType) {
+		this.bankAcctType = bankAcctType;
+	}
+
+	public String getCardNo() {
+		return cardNo;
+	}
+
+	public void setCardNo(String cardNo) {
+		this.cardNo = cardNo;
+	}
+
+	public String getCardName() {
+		return cardName;
+	}
+
+	public void setCardName(String cardName) {
+		this.cardName = cardName;
+	}
+
+	public String getNotifyUrl() {
+		return notifyUrl;
+	}
+
+	public void setNotifyUrl(String notifyUrl) {
+		this.notifyUrl = notifyUrl;
+	}
+}