adding JiaMin coding

This commit is contained in:
Carl
2022-01-05 16:14:02 +08:00
parent 5001e96ab7
commit 4afa25d02b
116 changed files with 32119 additions and 52 deletions

View File

@@ -1,5 +1,6 @@
package net.lab1024.smartadmin.module.system.alipay;
import com.alipay.api.AlipayApiException;
import com.alipay.api.AlipayClient;
import com.alipay.api.DefaultAlipayClient;
import com.alipay.api.domain.AlipayTradePrecreateModel;
@@ -7,6 +8,9 @@ import com.alipay.api.request.AlipayTradePrecreateRequest;
import com.alipay.api.response.AlipayTradePrecreateResponse;
import net.lab1024.smartadmin.module.system.alipay.alipayModel.AliPayEntity;
import net.lab1024.smartadmin.module.system.alipay.conf.AlipayConfig;
import net.lab1024.smartadmin.module.system.royalcanin.good.service.OrderService;
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.QueryEntity;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Map;
@@ -17,6 +21,9 @@ public class AliPayService {
public static String notify_url = "http://47.96.75.242:10086/smart-admin-api/royalcanin/updateOrderAliPay";
@Autowired
private OrderService orderService;
public String generateQRCode(AliPayEntity aliPayEntity) throws Exception {
AlipayTradePrecreateModel model = new AlipayTradePrecreateModel();
model.setSubject("皇家宠物食品官方商城");

View File

@@ -37,11 +37,8 @@ public class AlipayController {
*/
@PostMapping("royalcanin/aliPayUnifiedOrder")
public void code(@RequestBody AliPayEntity aliPayEntity, HttpServletResponse response) throws Exception{
public String aliPayUnifiedOrder(@RequestBody AliPayEntity aliPayEntity, HttpServletResponse response) throws Exception{
//---------------------------------------
//------AlipayTradePrecreateModel--------
//---------------------------------------
AlipayTradePrecreateModel model = new AlipayTradePrecreateModel();
model.setSubject(aliPayEntity.getSubject());
model.setTotalAmount(aliPayEntity.getTotal_amount());
@@ -50,21 +47,17 @@ public class AlipayController {
model.setOutTradeNo(aliPayEntity.getOut_trade_no());
model.setBody(aliPayEntity.getBody());
model.setGoodsDetail(aliPayEntity.getGoodsDetail());
//----------------------------------------
//-----AlipayTradePagePayRequest----------
//----------------------------------------
AlipayTradePrecreateRequest request = new AlipayTradePrecreateRequest();
request.setBizModel(model);
request.setNotifyUrl(notify_url);
//---------------------------------------
//-----------AlipayClient----------------
//---------------------------------------
AlipayClient alipayClient = new DefaultAlipayClient(AlipayConfig.gatewayUrl,AlipayConfig.app_id,AlipayConfig.merchant_private_key, "json",AlipayConfig.charset,AlipayConfig.alipay_public_key,AlipayConfig.sign_type);
AlipayTradePrecreateResponse alipayTradePrecreateResponse = alipayClient.execute(request);
if (alipayTradePrecreateResponse.isSuccess()) {
String code = alipayTradePrecreateResponse.getQrCode();
QRCodeUtil.createCodeToOutputStream(code, response.getOutputStream());
return code;
} else {
throw new RuntimeException("支付宝生成二维码失败");
}
@@ -73,7 +66,7 @@ public class AlipayController {
@RequestMapping("royalcanin/notify_url")
@RequestMapping("royalcanin/updateOrderAliPay")
public String returnUrl(HttpServletRequest request) throws UnsupportedEncodingException, AlipayApiException{
Map<String,String> params = new HashMap<String,String>();
Map<String,String[]> requestParams = request.getParameterMap();

View File

@@ -30,7 +30,6 @@ public class CouponService {
paramMap.put("petCategoryId",StringUtil.toString(couponCosumeEntity.getPetCategoryId()).equals("0")?null:StringUtil.toString(couponCosumeEntity.getPetCategoryId()));
paramMap.put("petBodySizeId",StringUtil.toString(couponCosumeEntity.getPetBodySizeId()).equals("0")?null:StringUtil.toString(couponCosumeEntity.getPetBodySizeId()));
MapRemoveNullUtil.removeNullEntry(paramMap);
net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(paramMap);
return SmartHttpUtil.sendPostForm(url+"consume",paramMap,null);
}

View File

@@ -0,0 +1,963 @@
<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://mms.wemediacn.com/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://mms.wemediacn.com/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified" targetNamespace="http://mms.wemediacn.com/">
<s:element name="SendSMS">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="mobile" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="FormatID" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="Content" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="ScheduleDate" type="s:dateTime" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendSMSResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="SendSMSResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendBatchSMS">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="mobileList" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="FormatID" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="Content" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="deadLineTime" type="s:dateTime" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendBatchSMSResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="SendBatchSMSResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendSMSCovey">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="XMLStr" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendSMSCoveyResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="SendSMSCoveyResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySMSState">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="MessageID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySMSStateResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="QuerySMSStateResult">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySmsSendRecord">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="time" type="s:dateTime" />
<s:element minOccurs="1" maxOccurs="1" name="MinID" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySmsSendRecordResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="QuerySmsSendRecordResult">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="CanelSMS">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="MessageID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="CanelSMSResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="CanelSMSResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySMSUP">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="MinID" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="Count" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="externCode" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySMSUPResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="QuerySMSUPResult">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySmsSeqReport">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="MinID" type="s:long" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="QuerySmsSeqReportResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="QuerySmsSeqReportResult">
<s:complexType>
<s:sequence>
<s:any />
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="TestTemplate">
<s:complexType>
<s:sequence>
<s:element minOccurs="1" maxOccurs="1" name="templateId" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="paramType" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="paramData" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="TestTemplateResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TestTemplateResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendTemplateSMS">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="mobile" type="s:string" />
<s:element minOccurs="1" maxOccurs="1" name="FormatID" type="s:int" />
<s:element minOccurs="1" maxOccurs="1" name="templateId" type="s:int" />
<s:element minOccurs="0" maxOccurs="1" name="paramType" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="paramData" type="s:string" />
<s:element minOccurs="0" maxOccurs="1" name="TokenID" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="SendTemplateSMSResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="SendTemplateSMSResult" type="s:string" />
</s:sequence>
</s:complexType>
</s:element>
<s:element name="string" nillable="true" type="s:string" />
</s:schema>
</wsdl:types>
<wsdl:message name="SendSMSSoapIn">
<wsdl:part name="parameters" element="tns:SendSMS" />
</wsdl:message>
<wsdl:message name="SendSMSSoapOut">
<wsdl:part name="parameters" element="tns:SendSMSResponse" />
</wsdl:message>
<wsdl:message name="SendBatchSMSSoapIn">
<wsdl:part name="parameters" element="tns:SendBatchSMS" />
</wsdl:message>
<wsdl:message name="SendBatchSMSSoapOut">
<wsdl:part name="parameters" element="tns:SendBatchSMSResponse" />
</wsdl:message>
<wsdl:message name="SendSMSCoveySoapIn">
<wsdl:part name="parameters" element="tns:SendSMSCovey" />
</wsdl:message>
<wsdl:message name="SendSMSCoveySoapOut">
<wsdl:part name="parameters" element="tns:SendSMSCoveyResponse" />
</wsdl:message>
<wsdl:message name="QuerySMSStateSoapIn">
<wsdl:part name="parameters" element="tns:QuerySMSState" />
</wsdl:message>
<wsdl:message name="QuerySMSStateSoapOut">
<wsdl:part name="parameters" element="tns:QuerySMSStateResponse" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordSoapIn">
<wsdl:part name="parameters" element="tns:QuerySmsSendRecord" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordSoapOut">
<wsdl:part name="parameters" element="tns:QuerySmsSendRecordResponse" />
</wsdl:message>
<wsdl:message name="CanelSMSSoapIn">
<wsdl:part name="parameters" element="tns:CanelSMS" />
</wsdl:message>
<wsdl:message name="CanelSMSSoapOut">
<wsdl:part name="parameters" element="tns:CanelSMSResponse" />
</wsdl:message>
<wsdl:message name="QuerySMSUPSoapIn">
<wsdl:part name="parameters" element="tns:QuerySMSUP" />
</wsdl:message>
<wsdl:message name="QuerySMSUPSoapOut">
<wsdl:part name="parameters" element="tns:QuerySMSUPResponse" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportSoapIn">
<wsdl:part name="parameters" element="tns:QuerySmsSeqReport" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportSoapOut">
<wsdl:part name="parameters" element="tns:QuerySmsSeqReportResponse" />
</wsdl:message>
<wsdl:message name="TestTemplateSoapIn">
<wsdl:part name="parameters" element="tns:TestTemplate" />
</wsdl:message>
<wsdl:message name="TestTemplateSoapOut">
<wsdl:part name="parameters" element="tns:TestTemplateResponse" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSSoapIn">
<wsdl:part name="parameters" element="tns:SendTemplateSMS" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSSoapOut">
<wsdl:part name="parameters" element="tns:SendTemplateSMSResponse" />
</wsdl:message>
<wsdl:message name="SendSMSHttpGetIn">
<wsdl:part name="mobile" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="Content" type="s:string" />
<wsdl:part name="ScheduleDate" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendSMSHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendBatchSMSHttpGetIn">
<wsdl:part name="mobileList" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="Content" type="s:string" />
<wsdl:part name="deadLineTime" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendBatchSMSHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendSMSCoveyHttpGetIn">
<wsdl:part name="XMLStr" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendSMSCoveyHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="QuerySMSStateHttpGetIn">
<wsdl:part name="MessageID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySMSStateHttpGetOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordHttpGetIn">
<wsdl:part name="time" type="s:string" />
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordHttpGetOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="CanelSMSHttpGetIn">
<wsdl:part name="MessageID" type="s:string" />
</wsdl:message>
<wsdl:message name="CanelSMSHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="QuerySMSUPHttpGetIn">
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="Count" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
<wsdl:part name="externCode" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySMSUPHttpGetOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportHttpGetIn">
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportHttpGetOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="TestTemplateHttpGetIn">
<wsdl:part name="templateId" type="s:string" />
<wsdl:part name="paramType" type="s:string" />
<wsdl:part name="paramData" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="TestTemplateHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSHttpGetIn">
<wsdl:part name="mobile" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="templateId" type="s:string" />
<wsdl:part name="paramType" type="s:string" />
<wsdl:part name="paramData" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSHttpGetOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendSMSHttpPostIn">
<wsdl:part name="mobile" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="Content" type="s:string" />
<wsdl:part name="ScheduleDate" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendSMSHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendBatchSMSHttpPostIn">
<wsdl:part name="mobileList" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="Content" type="s:string" />
<wsdl:part name="deadLineTime" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendBatchSMSHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendSMSCoveyHttpPostIn">
<wsdl:part name="XMLStr" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendSMSCoveyHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="QuerySMSStateHttpPostIn">
<wsdl:part name="MessageID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySMSStateHttpPostOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordHttpPostIn">
<wsdl:part name="time" type="s:string" />
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySmsSendRecordHttpPostOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="CanelSMSHttpPostIn">
<wsdl:part name="MessageID" type="s:string" />
</wsdl:message>
<wsdl:message name="CanelSMSHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="QuerySMSUPHttpPostIn">
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="Count" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
<wsdl:part name="externCode" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySMSUPHttpPostOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportHttpPostIn">
<wsdl:part name="MinID" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="QuerySmsSeqReportHttpPostOut">
<wsdl:part name="Body" />
</wsdl:message>
<wsdl:message name="TestTemplateHttpPostIn">
<wsdl:part name="templateId" type="s:string" />
<wsdl:part name="paramType" type="s:string" />
<wsdl:part name="paramData" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="TestTemplateHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSHttpPostIn">
<wsdl:part name="mobile" type="s:string" />
<wsdl:part name="FormatID" type="s:string" />
<wsdl:part name="templateId" type="s:string" />
<wsdl:part name="paramType" type="s:string" />
<wsdl:part name="paramData" type="s:string" />
<wsdl:part name="TokenID" type="s:string" />
</wsdl:message>
<wsdl:message name="SendTemplateSMSHttpPostOut">
<wsdl:part name="Body" element="tns:string" />
</wsdl:message>
<wsdl:portType name="SMSServiceSoap">
<wsdl:operation name="SendSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;10:中文白名单确认短信;40:长短信)&lt;br/&gt;Content:短信内容;&lt;br/&gt;ScheduleDate:计划发送时间可以传以前日期如2010-1-1,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendSMSSoapIn" />
<wsdl:output message="tns:SendSMSSoapOut" />
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送批次短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobileList:手机号,用半角逗号分隔;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文)&lt;br/&gt;Content:短信内容;&lt;br/&gt;deadLineTime:发送截至时间;&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendBatchSMSSoapIn" />
<wsdl:output message="tns:SendBatchSMSSoapOut" />
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:群发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;ContentXml:XML数据集mobile:手机号FormatID:短信格式(0:英文;8:中文)Content:短信内容ScheduleDate:计划发送时间可以传空值null,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;返回成功发送数量</wsdl:documentation>
<wsdl:input message="tns:SendSMSCoveySoapIn" />
<wsdl:output message="tns:SendSMSCoveySoapOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID查询短信发送状态&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值XML</wsdl:documentation>
<wsdl:input message="tns:QuerySMSStateSoapIn" />
<wsdl:output message="tns:QuerySMSStateSoapOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询某一天短信发送结果&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;time:发送时间;&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSendRecordSoapIn" />
<wsdl:output message="tns:QuerySmsSendRecordSoapOut" />
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID撤消短信发送&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不可用&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值OKCount;&lt;br/&gt;ERROR:XXX:[错误描述]&lt;br/&gt;999:系统错误</wsdl:documentation>
<wsdl:input message="tns:CanelSMSSoapIn" />
<wsdl:output message="tns:CanelSMSSoapOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:查询上行短信&lt;br/&gt;参数说明:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;Count:返回行数(目前此参数没用, 最多返回100行记录&lt;br/&gt;TokenID:企业验证码;&lt;br/&gt;ExternCode:端号号标识(目前此参数没用);&lt;br/&gt;返回值xml</wsdl:documentation>
<wsdl:input message="tns:QuerySMSUPSoapIn" />
<wsdl:output message="tns:QuerySMSUPSoapOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询最新短信发送结果&lt;br/&gt;参数:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSeqReportSoapIn" />
<wsdl:output message="tns:QuerySmsSeqReportSoapOut" />
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:测试模板和参数匹配合并后的结果;&lt;br/&gt;参数说明:&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;参数匹配后的短信&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:TestTemplateSoapIn" />
<wsdl:output message="tns:TestTemplateSoapOut" />
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;)&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendTemplateSMSSoapIn" />
<wsdl:output message="tns:SendTemplateSMSSoapOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name="SMSServiceHttpGet">
<wsdl:operation name="SendSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;10:中文白名单确认短信;40:长短信)&lt;br/&gt;Content:短信内容;&lt;br/&gt;ScheduleDate:计划发送时间可以传以前日期如2010-1-1,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendSMSHttpGetIn" />
<wsdl:output message="tns:SendSMSHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送批次短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobileList:手机号,用半角逗号分隔;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文)&lt;br/&gt;Content:短信内容;&lt;br/&gt;deadLineTime:发送截至时间;&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendBatchSMSHttpGetIn" />
<wsdl:output message="tns:SendBatchSMSHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:群发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;ContentXml:XML数据集mobile:手机号FormatID:短信格式(0:英文;8:中文)Content:短信内容ScheduleDate:计划发送时间可以传空值null,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;返回成功发送数量</wsdl:documentation>
<wsdl:input message="tns:SendSMSCoveyHttpGetIn" />
<wsdl:output message="tns:SendSMSCoveyHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID查询短信发送状态&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值XML</wsdl:documentation>
<wsdl:input message="tns:QuerySMSStateHttpGetIn" />
<wsdl:output message="tns:QuerySMSStateHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询某一天短信发送结果&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;time:发送时间;&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSendRecordHttpGetIn" />
<wsdl:output message="tns:QuerySmsSendRecordHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID撤消短信发送&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不可用&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值OKCount;&lt;br/&gt;ERROR:XXX:[错误描述]&lt;br/&gt;999:系统错误</wsdl:documentation>
<wsdl:input message="tns:CanelSMSHttpGetIn" />
<wsdl:output message="tns:CanelSMSHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:查询上行短信&lt;br/&gt;参数说明:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;Count:返回行数(目前此参数没用, 最多返回100行记录&lt;br/&gt;TokenID:企业验证码;&lt;br/&gt;ExternCode:端号号标识(目前此参数没用);&lt;br/&gt;返回值xml</wsdl:documentation>
<wsdl:input message="tns:QuerySMSUPHttpGetIn" />
<wsdl:output message="tns:QuerySMSUPHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询最新短信发送结果&lt;br/&gt;参数:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSeqReportHttpGetIn" />
<wsdl:output message="tns:QuerySmsSeqReportHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:测试模板和参数匹配合并后的结果;&lt;br/&gt;参数说明:&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;参数匹配后的短信&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:TestTemplateHttpGetIn" />
<wsdl:output message="tns:TestTemplateHttpGetOut" />
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;)&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendTemplateSMSHttpGetIn" />
<wsdl:output message="tns:SendTemplateSMSHttpGetOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name="SMSServiceHttpPost">
<wsdl:operation name="SendSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;10:中文白名单确认短信;40:长短信)&lt;br/&gt;Content:短信内容;&lt;br/&gt;ScheduleDate:计划发送时间可以传以前日期如2010-1-1,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendSMSHttpPostIn" />
<wsdl:output message="tns:SendSMSHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送批次短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobileList:手机号,用半角逗号分隔;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文)&lt;br/&gt;Content:短信内容;&lt;br/&gt;deadLineTime:发送截至时间;&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;103:短信内容不能为空;&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendBatchSMSHttpPostIn" />
<wsdl:output message="tns:SendBatchSMSHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:群发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;ContentXml:XML数据集mobile:手机号FormatID:短信格式(0:英文;8:中文)Content:短信内容ScheduleDate:计划发送时间可以传空值null,立即发送)&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;返回成功发送数量</wsdl:documentation>
<wsdl:input message="tns:SendSMSCoveyHttpPostIn" />
<wsdl:output message="tns:SendSMSCoveyHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID查询短信发送状态&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值XML</wsdl:documentation>
<wsdl:input message="tns:QuerySMSStateHttpPostIn" />
<wsdl:output message="tns:QuerySMSStateHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询某一天短信发送结果&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不建议使用, 未来可能删除&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;time:发送时间;&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSendRecordHttpPostIn" />
<wsdl:output message="tns:QuerySmsSendRecordHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能根据MessageID撤消短信发送&lt;br/&gt;&lt;font color='#ff0000'&gt;注意:目前此方法不可用&lt;/font&gt;&lt;br/&gt;参数:&lt;br/&gt;MessageID:成功调用SendSMS发送短信时返回的值&lt;br/&gt;返回值OKCount;&lt;br/&gt;ERROR:XXX:[错误描述]&lt;br/&gt;999:系统错误</wsdl:documentation>
<wsdl:input message="tns:CanelSMSHttpPostIn" />
<wsdl:output message="tns:CanelSMSHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:查询上行短信&lt;br/&gt;参数说明:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;Count:返回行数(目前此参数没用, 最多返回100行记录&lt;br/&gt;TokenID:企业验证码;&lt;br/&gt;ExternCode:端号号标识(目前此参数没用);&lt;br/&gt;返回值xml</wsdl:documentation>
<wsdl:input message="tns:QuerySMSUPHttpPostIn" />
<wsdl:output message="tns:QuerySMSUPHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:批量查询最新短信发送结果&lt;br/&gt;参数:&lt;br/&gt;MinID:开始的ID号第一次查询输入0 以后输入上次查询有结果返回的最大值, 增量查询模式);&lt;br/&gt;TokenID:企业验证码</wsdl:documentation>
<wsdl:input message="tns:QuerySmsSeqReportHttpPostIn" />
<wsdl:output message="tns:QuerySmsSeqReportHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:测试模板和参数匹配合并后的结果;&lt;br/&gt;参数说明:&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;参数匹配后的短信&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:TestTemplateHttpPostIn" />
<wsdl:output message="tns:TestTemplateHttpPostOut" />
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">功能:发送短信;&lt;br/&gt;参数说明:&lt;br/&gt;mobile:手机号;&lt;br/&gt;FormatID:短信格式(0:英文;8:中文;)&lt;br/&gt;templateId:短信模板ID&lt;br/&gt;paramType:模板参数数据类型JSON or XML)&lt;br/&gt;paramData:模板参数数据&lt;br/&gt;TokenID企业验证码&lt;br/&gt;返回值:&lt;br/&gt;OK:[MessageID]&lt;br/&gt;ERROR:XXX:[错误描述](XXX是错误代码)&lt;br/&gt;100:不正确的Token;&lt;br/&gt;101:没有短信权限;&lt;br/&gt;102:余额不足;&lt;br/&gt;110:[没有找到短信模板];&lt;br/&gt;111:[paramType 必须是JSON 或 XML];&lt;br/&gt;112:[paramData 解析失败];&lt;br/&gt;200:非手机号;&lt;br/&gt;999:系统错误;&lt;br/&gt;</wsdl:documentation>
<wsdl:input message="tns:SendTemplateSMSHttpPostIn" />
<wsdl:output message="tns:SendTemplateSMSHttpPostOut" />
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="SMSServiceSoap" type="tns:SMSServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="SendSMS">
<soap:operation soapAction="http://mms.wemediacn.com/SendSMS" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<soap:operation soapAction="http://mms.wemediacn.com/SendBatchSMS" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<soap:operation soapAction="http://mms.wemediacn.com/SendSMSCovey" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<soap:operation soapAction="http://mms.wemediacn.com/QuerySMSState" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<soap:operation soapAction="http://mms.wemediacn.com/QuerySmsSendRecord" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<soap:operation soapAction="http://mms.wemediacn.com/CanelSMS" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<soap:operation soapAction="http://mms.wemediacn.com/QuerySMSUP" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<soap:operation soapAction="http://mms.wemediacn.com/QuerySmsSeqReport" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<soap:operation soapAction="http://mms.wemediacn.com/TestTemplate" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<soap:operation soapAction="http://mms.wemediacn.com/SendTemplateSMS" style="document" />
<wsdl:input>
<soap:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="SMSServiceSoap12" type="tns:SMSServiceSoap">
<soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
<wsdl:operation name="SendSMS">
<soap12:operation soapAction="http://mms.wemediacn.com/SendSMS" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<soap12:operation soapAction="http://mms.wemediacn.com/SendBatchSMS" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<soap12:operation soapAction="http://mms.wemediacn.com/SendSMSCovey" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<soap12:operation soapAction="http://mms.wemediacn.com/QuerySMSState" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<soap12:operation soapAction="http://mms.wemediacn.com/QuerySmsSendRecord" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<soap12:operation soapAction="http://mms.wemediacn.com/CanelSMS" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<soap12:operation soapAction="http://mms.wemediacn.com/QuerySMSUP" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<soap12:operation soapAction="http://mms.wemediacn.com/QuerySmsSeqReport" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<soap12:operation soapAction="http://mms.wemediacn.com/TestTemplate" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<soap12:operation soapAction="http://mms.wemediacn.com/SendTemplateSMS" style="document" />
<wsdl:input>
<soap12:body use="literal" />
</wsdl:input>
<wsdl:output>
<soap12:body use="literal" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="SMSServiceHttpGet" type="tns:SMSServiceHttpGet">
<http:binding verb="GET" />
<wsdl:operation name="SendSMS">
<http:operation location="/SendSMS" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<http:operation location="/SendBatchSMS" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<http:operation location="/SendSMSCovey" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<http:operation location="/QuerySMSState" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<http:operation location="/QuerySmsSendRecord" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<http:operation location="/CanelSMS" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<http:operation location="/QuerySMSUP" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<http:operation location="/QuerySmsSeqReport" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<http:operation location="/TestTemplate" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<http:operation location="/SendTemplateSMS" />
<wsdl:input>
<http:urlEncoded />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:binding name="SMSServiceHttpPost" type="tns:SMSServiceHttpPost">
<http:binding verb="POST" />
<wsdl:operation name="SendSMS">
<http:operation location="/SendSMS" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendBatchSMS">
<http:operation location="/SendBatchSMS" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendSMSCovey">
<http:operation location="/SendSMSCovey" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSState">
<http:operation location="/QuerySMSState" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSendRecord">
<http:operation location="/QuerySmsSendRecord" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="CanelSMS">
<http:operation location="/CanelSMS" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySMSUP">
<http:operation location="/QuerySMSUP" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="QuerySmsSeqReport">
<http:operation location="/QuerySmsSeqReport" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:content part="Body" type="text/xml" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="TestTemplate">
<http:operation location="/TestTemplate" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
<wsdl:operation name="SendTemplateSMS">
<http:operation location="/SendTemplateSMS" />
<wsdl:input>
<mime:content type="application/x-www-form-urlencoded" />
</wsdl:input>
<wsdl:output>
<mime:mimeXml part="Body" />
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="SMSService">
<wsdl:port name="SMSServiceSoap" binding="tns:SMSServiceSoap">
<soap:address location="http://www.wemediacn.net/webservice/smsservice.asmx" />
</wsdl:port>
<wsdl:port name="SMSServiceSoap12" binding="tns:SMSServiceSoap12">
<soap12:address location="http://www.wemediacn.net/webservice/smsservice.asmx" />
</wsdl:port>
<wsdl:port name="SMSServiceHttpGet" binding="tns:SMSServiceHttpGet">
<http:address location="http://www.wemediacn.net/webservice/smsservice.asmx" />
</wsdl:port>
<wsdl:port name="SMSServiceHttpPost" binding="tns:SMSServiceHttpPost">
<http:address location="http://www.wemediacn.net/webservice/smsservice.asmx" />
</wsdl:port>
</wsdl:service>
</wsdl:definitions>

View File

@@ -57,7 +57,7 @@ public class CouponCosumeEntity {
/**
* 实际优惠金额
*/
@ApiModelProperty(example = "23")
@ApiModelProperty(example = "")
private BigDecimal realCouponAmount;
/**

View File

@@ -11,8 +11,8 @@ import net.lab1024.smartadmin.constant.SwaggerTagConst;
import net.lab1024.smartadmin.module.system.alipay.AliPayService;
import net.lab1024.smartadmin.module.system.alipay.alipayModel.AliPayEntity;
import net.lab1024.smartadmin.module.system.alipay.conf.AlipayConfig;
import net.lab1024.smartadmin.module.system.qrcode.QRCodeUtil;
import net.lab1024.smartadmin.module.system.royalcanin.good.constant.OrderResponseCodeConst;
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrderAddress;
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrdersEntity;
import net.lab1024.smartadmin.module.system.royalcanin.good.service.CartService;
import net.lab1024.smartadmin.module.system.royalcanin.good.service.OrderService;
@@ -48,7 +48,7 @@ public class OrderController {
@ApiOperation(value = "微信支付订单", notes = "生成订单")
@PostMapping("royalcanin/generateOrderWX")
public ResponseDTO<String> generateOrderWX(@RequestBody List<OrdersEntity> ordersEntityList) throws Exception {
public ResponseDTO<String> generateOrderWX(@RequestBody List<OrdersEntity> ordersEntityList, OrderAddress orderAddress) throws Exception {
StringBuffer productId = new StringBuffer();
StringBuffer productName = new StringBuffer();
String memberId = "";
@@ -67,10 +67,18 @@ public class OrderController {
orderDatilListEntity.setProductId(ordersEntitys.getProductId());
orderDatilListEntity.setEcPrice(ordersEntitys.getPayAmount());
orderDatilListJson.add(orderDatilListEntity);
// orderDatilListEntitiesList.add(orderDatilListEntity);
if(ordersEntitys.getCouponCode() != "") {
ordersEntity.setCouponAmount(ordersEntitys.getCouponAmount());
ordersEntity.setCouponCode(ordersEntitys.getCouponCode());
ordersEntity.setCouponName(ordersEntitys.getCouponName());
}
productId.append(ordersEntitys.getProductId()+",");
productName.append(ordersEntitys.getProductName()+",");
total_fee = total_fee + Double.parseDouble(ordersEntitys.getPayAmount())*ordersEntitys.getBuyCount();
if(ordersEntitys.getPayAmount() != "0"){
total_fee = total_fee + (Double.parseDouble(ordersEntitys.getPayAmount()) * ordersEntitys.getBuyCount()) - Double.parseDouble(ordersEntitys.getCouponAmount());
}else {
total_fee = total_fee + Double.parseDouble(ordersEntitys.getPayAmount())*ordersEntitys.getBuyCount();
}
memberId = ordersEntitys.getMemberId();
mobile = ordersEntitys.getPhoneNumber();
buyCount = buyCount + ordersEntitys.getBuyCount();
@@ -83,11 +91,11 @@ public class OrderController {
ordersEntity.setBuyCount(buyCount);
ordersEntity.setOrderNo(GenerateSequenceUtil.generateSequenceNo());
ordersEntity.setOrderStatus("0");
if(orderService.generateOrder(ordersEntity,orderDatilListJson) == 1){
if(orderService.generateOrder(ordersEntity,orderDatilListJson,orderAddress) == 1){
wxPayEntity.setProduct_id(ordersEntity.getProductId());
wxPayEntity.setTotal_fee(StringUtil.toString(total_fee));
wxPayEntity.setOut_trade_no(ordersEntity.getOrderNo());
// QRCodeUtil.createCodeToOutputStream(, response.getOutputStream());
return ResponseDTO.succData(wxpayService.generateQRCode(wxPayEntity));
}
return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL);
@@ -104,8 +112,6 @@ public class OrderController {
@ApiOperation(value = "取消订单", notes = "取消订单")
@RequestMapping(value = "royalcanin/cancelOrder",method = RequestMethod.POST)
public ResponseDTO<String> cancelOrder(@RequestBody QueryEntity queryEntity) throws Exception {
queryEntity.setChannelId("15");
queryEntity.setSecret("H5@2021");
String orderEntityJson = orderService.query(queryEntity);
return orderService.cancelOrder(orderEntityJson);
}
@@ -113,7 +119,7 @@ public class OrderController {
@ApiOperation(value = "支付宝支付订单", notes = "生成订单")
@PostMapping("royalcanin/generateOrderAlipay")
public ResponseDTO<String> generateOrderAliPay(@RequestBody List<OrdersEntity> ordersEntityList, HttpServletResponse response) throws Exception {
public ResponseDTO<String> generateOrderAliPay(@RequestBody List<OrdersEntity> ordersEntityList,OrderAddress orderAddress) throws Exception {
StringBuffer productId = new StringBuffer();
StringBuffer productName = new StringBuffer();
String memberId = "";
@@ -147,14 +153,16 @@ public class OrderController {
ordersEntity.setPhoneNumber(mobile);
ordersEntity.setBuyCount(buyCount);
ordersEntity.setPayType("2");
ordersEntity.setOrderNo(GenerateSequenceUtil.generateSequenceNo());
ordersEntity.setOrderStatus("0");
if(orderService.generateOrder(ordersEntity,orderDatilListJson) == 1){
if(orderService.generateOrder(ordersEntity,orderDatilListJson,orderAddress) == 1){
aliPayEntity.setProduct_code(ordersEntity.getProductId());
aliPayEntity.setTotal_amount(StringUtil.toString(total_fee));
aliPayEntity.setOut_trade_no(ordersEntity.getOrderNo());
QRCodeUtil.createCodeToOutputStream(aliPayService.generateQRCode(aliPayEntity), response.getOutputStream());
return ResponseDTO.succData(aliPayService.generateQRCode(aliPayEntity));
}else {
return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL);
}
return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL);
}
@PostMapping("royalcanin/updateOrderAliPay")

View File

@@ -18,6 +18,8 @@ public class OrderResponseCodeConst extends ResponseCodeConst {
public static final OrderResponseCodeConst SMS_OVERTIME = new OrderResponseCodeConst(9006, "短信校验超时!");
public static final OrderResponseCodeConst WITHOUT_ORDER = new OrderResponseCodeConst(9007, "没有该订单数据!");
public OrderResponseCodeConst(int code, String msg) {
super(code, msg);
}

View File

@@ -4,6 +4,7 @@ package net.lab1024.smartadmin.module.system.royalcanin.good.dao;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrdersEntity;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
/**
@@ -17,7 +18,7 @@ public interface OrdersDao extends BaseMapper<OrdersEntity> {
OrdersEntity findByOrderId(String id);
Integer updateOrderStatus(String out_trade_no,String total_amount);
Integer updateOrderStatus(@Param("outTradeNo")String outTradeNo, @Param("totalAmount")String total_amount);
Integer cancelOrder(String out_trade_no);

View File

@@ -0,0 +1,19 @@
package net.lab1024.smartadmin.module.system.royalcanin.good.model;
import lombok.Data;
@Data
public class OrderAddress {
private String addressPhoneNumber = "null";
private String addressUserName = "null";
private String addressProvinceName = "null";
private String addressCityName = "null";
private String addressCountyName = "null";
private String addressDetailInfo = "null";
}

View File

@@ -38,4 +38,5 @@ public class OrdersEntity {
private String phoneNumber="";
private String payType="1";
}

View File

@@ -8,7 +8,9 @@ import net.lab1024.smartadmin.module.system.royalcanin.coupon.CouponCosumeEntity
import net.lab1024.smartadmin.module.system.royalcanin.coupon.CouponFetchEntity;
import net.lab1024.smartadmin.module.system.royalcanin.domain.RoyalcaninOperateLogEntity;
import net.lab1024.smartadmin.module.system.royalcanin.domain.RoyalcaninOperateLogService;
import net.lab1024.smartadmin.module.system.royalcanin.good.constant.OrderResponseCodeConst;
import net.lab1024.smartadmin.module.system.royalcanin.good.dao.OrdersDao;
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrderAddress;
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrdersEntity;
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.AddOrSaveEntity;
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.OrderCouponEntity;
@@ -20,6 +22,8 @@ import net.sf.json.JSONArray;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.Map;
@@ -38,11 +42,14 @@ public class OrderService {
private String url = "https://miniapp-test.royalcanin.com.cn/rcmini/h5/orderMaster/";
@Transactional
public int generateOrder(OrdersEntity ordersEntity, JSONArray listJson) throws Exception {
public int generateOrder(OrdersEntity ordersEntity, JSONArray listJson, OrderAddress orderAddress) throws Exception {
AddOrSaveEntity addOrSaveEntity = new AddOrSaveEntity();
if (ordersEntity.getCouponCode() != ""&& null != ordersEntity.getCouponCode()) {
CouponCosumeEntity couponCosumeEntity = new CouponCosumeEntity();
couponCosumeEntity.setCouponCode(ordersEntity.getCouponCode());
couponCosumeEntity.setOrderNo(ordersEntity.getOrderNo());
BigDecimal realCouponAmount =new BigDecimal(ordersEntity.getOrderAmount());
couponCosumeEntity.setRealCouponAmount(realCouponAmount);
JSONObject jsonObject = JSONObject.parseObject(couponService.couponCosume(couponCosumeEntity));
if(!jsonObject.getString("code").equals("0")) {
return 0;
@@ -64,9 +71,12 @@ public class OrderService {
addOrSaveEntity.setOrderNumber(ordersEntity.getOrderNo());
addOrSaveEntity.setSalesAmount(ordersEntity.getOrderAmount());
addOrSaveEntity.setOrderDetailList(listJson.toString());
addOrSaveEntity.setAddressCityName(orderAddress.getAddressCityName());
addOrSaveEntity.setAddressCountyName(orderAddress.getAddressCountyName());
addOrSaveEntity.setAddressDetailInfo(orderAddress.getAddressDetailInfo());
addOrSaveEntity.setAddressPhoneNumber(orderAddress.getAddressPhoneNumber());
addOrSaveEntity.setAddressProvinceName(orderAddress.getAddressProvinceName());
addOrSaveEntity.setAddressUserName(orderAddress.getAddressUserName());
JSONObject jsonObject = JSONObject.parseObject(addOrSave(addOrSaveEntity));
if(jsonObject.getString("code").equals("1"))
return 1;
@@ -91,27 +101,53 @@ public class OrderService {
JSONObject jsonObject = (JSONObject)jsonArray.get(0);
String orderNo = jsonObject.getString("orderNumber");
OrdersEntity ordersEntity = ordersDao.findByOrderId(orderNo);
if(!ordersEntity.getCouponCode().equals("")&& null!= ordersEntity.getCouponCode()){
CouponFetchEntity couponFetchEntity = new CouponFetchEntity();
couponFetchEntity.setChannelId(15);
couponFetchEntity.setChannelSecurity("H5@2021");
couponFetchEntity.setCouponId(ordersEntity.getCouponId());
couponFetchEntity.setMemberId(ordersEntity.getMemberId());
couponService.couponFetch(couponFetchEntity);
if(ordersEntity != null) {
if (!ordersEntity.getCouponCode().equals("") && null != ordersEntity.getCouponCode()) {
CouponFetchEntity couponFetchEntity = new CouponFetchEntity();
couponFetchEntity.setChannelId(15);
couponFetchEntity.setChannelSecurity("H5@2021");
couponFetchEntity.setCouponId(ordersEntity.getCouponId());
couponFetchEntity.setMemberId(ordersEntity.getMemberId());
couponService.couponFetch(couponFetchEntity);
}
if (ordersDao.cancelOrder(orderNo) == 1) {
AddOrSaveEntity addOrSaveEntity = new AddOrSaveEntity();
addOrSaveEntity.setOrderNumber(orderNo);
addOrSaveEntity.setPhoneNumber(ordersEntity.getPhoneNumber());
addOrSaveEntity.setStatus("3");
addOrSaveEntity.setOrderDetailList(jsonObject.getString("orderDetailList"));
addOrSaveEntity.setDeliveryType(jsonObject.getString("deliveryType"));
addOrSaveEntity.setSalesAmount(jsonObject.getString("salesAmount"));
addOrSaveEntity.setOrderDate(jsonObject.getString("orderDate"));
addOrSave(addOrSaveEntity);
}
return ResponseDTO.succ();
}else{
return ResponseDTO.wrap(OrderResponseCodeConst.WITHOUT_ORDER);
}
if(ordersDao.cancelOrder(orderNo) == 1){
}
@Transactional
public ResponseDTO<String> completeOrder(String totalFee ,String addOrSaveJson) throws Exception {
com.alibaba.fastjson.JSONArray jsonArray = JSONObject.parseArray(addOrSaveJson);
JSONObject jsonObject = (JSONObject)jsonArray.get(0);
String orderNo = jsonObject.getString("orderNumber");
OrdersEntity ordersEntity = ordersDao.findByOrderId(orderNo);
if(ordersEntity != null){
AddOrSaveEntity addOrSaveEntity = new AddOrSaveEntity();
addOrSaveEntity.setOrderNumber(orderNo);
addOrSaveEntity.setPhoneNumber(ordersEntity.getPhoneNumber());
addOrSaveEntity.setStatus("3");
addOrSaveEntity.setStatus("1");
addOrSaveEntity.setOrderDetailList(jsonObject.getString("orderDetailList"));
addOrSaveEntity.setDeliveryType(jsonObject.getString("deliveryType"));
addOrSaveEntity.setSalesAmount(jsonObject.getString("salesAmount"));
addOrSaveEntity.setOrderDate(jsonObject.getString("orderDate"));
addOrSaveEntity.setPaymentAmount(totalFee);
addOrSave(addOrSaveEntity);
return ResponseDTO.succ();
}else{
return ResponseDTO.wrap(OrderResponseCodeConst.WITHOUT_ORDER);
}
return ResponseDTO.succ();
}
@@ -140,7 +176,7 @@ public class OrderService {
JSONObject jsonObject = JSONObject.parseObject(result);
String afterDecodeResult = AESUtil.decryptLinux(jsonObject.getString("data"), AESUtil.KEY);
//记录服务响应时间
addOperatreFullData(url+"addOrSave",queryEntity.toString(),result, startTime,elapsedTime,acceptTime);
addOperatreFullData(url+"orderMaster/query",queryEntity.toString(),result, startTime,elapsedTime,acceptTime);
return afterDecodeResult;
}

View File

@@ -32,4 +32,17 @@ public class AddOrSaveEntity {
private String orderCoupon ="null";
private String addressPhoneNumber = "null";
private String addressUserName = "null";
private String addressProvinceName = "null";
private String addressCityName = "null";
private String addressCountyName = "null";
private String addressDetailInfo = "null";
}

View File

@@ -1,6 +1,8 @@
package net.lab1024.smartadmin.module.system.wxpay;
import net.lab1024.smartadmin.module.system.royalcanin.good.service.OrderService;
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.AddOrSaveEntity;
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.QueryEntity;
import net.lab1024.smartadmin.module.system.wxpay.sdk.WXPay;
import net.lab1024.smartadmin.module.system.wxpay.sdk.WXPayUtil;
import net.lab1024.smartadmin.module.system.wxpay.wxPayModel.WxPayEntity;
@@ -80,16 +82,18 @@ public class WxpayService {
response.setContentType("text/xml");
response.setContentType("content-type");
response.getWriter().println("<xml> <return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[OK]]></return_msg> </xml>");
//这里说明告诉微信你已经成功啦,别给老子重复回调我的方法啦,这里有一个坑,
response.setContentType("text/xml");
response.getWriter().println("SUCCESS");
//本身我就只有这两句话,然后就导致微信一直回调我的方法,废了半天的劲才搞好啦,
//原因就是格式不对,给他返回的值他不认识,这里可以看一下微信的支付开发文档,虽然文档写的很垃圾
QueryEntity queryEntity = new QueryEntity();
queryEntity.setOrderNumber(outTradeNo);
String orderEntityJson = orderService.query(queryEntity);
orderService.completeOrder(totalFee,orderEntityJson);
}
}else {
// 未成功,就都处理为失败订单
response.setContentType("text/html");
response.getWriter().println("fail");
}
// 未成功,就都处理为失败订单
response.setContentType("text/html");
response.getWriter().println("fail");
}
} catch (IOException e) {
e.printStackTrace();