Showing preview only (5,233K chars total). Download the full file or copy to clipboard to get everything.
Repository: JamesYing/JCWX
Branch: master
Commit: cc9b16436b19
Files: 406
Total size: 4.9 MB
Directory structure:
gitextract_b2y6yjq7/
├── .gitattributes
├── .gitignore
├── Business/
│ ├── Api/
│ │ ├── DefaultApiClient.cs
│ │ └── IApiClient.cs
│ ├── ApiAccessTokenManager.cs
│ ├── Common/
│ │ ├── DataSecret.cs
│ │ ├── DateTimeExtend.cs
│ │ ├── HttpHelper.cs
│ │ └── ShelfModuleConverter.cs
│ ├── CustomAccount.cs
│ ├── IMessageHandler.cs
│ ├── IMessageRole.cs
│ ├── Logger/
│ │ └── ILogger.cs
│ ├── Model/
│ │ ├── ApiRequests/
│ │ │ ├── AccessTokenCodeRequest.cs
│ │ │ ├── AccessTokenRequest.cs
│ │ │ ├── ApiGetNeedTokenRequest.cs
│ │ │ ├── ApiPostNeedTokenRequest.cs
│ │ │ ├── ApiRequest.cs
│ │ │ ├── CustomServiceGetRecordRequest.cs
│ │ │ ├── CustomserviceGetkflistRequest.cs
│ │ │ ├── CustomserviceGetonlinekflistRequest.cs
│ │ │ ├── CustomserviceKfaccountAddRequest.cs
│ │ │ ├── CustomserviceKfaccountUpdateRequest.cs
│ │ │ ├── CustomserviceKfaccountUploadheadimgRequest.cs
│ │ │ ├── CustomserviceKfsessionCloseRequest.cs
│ │ │ ├── CustomserviceKfsessionCreateRequest.cs
│ │ │ ├── CustomserviceKfsessionGetsessionRequest.cs
│ │ │ ├── CustomserviceKfsessionGetsessionlistRequest.cs
│ │ │ ├── CustomserviceKfsessionGetwaitcaseRequest.cs
│ │ │ ├── CustomservicesKfaccountDelRequest.cs
│ │ │ ├── DatacubeGetInterfaceRequest.cs
│ │ │ ├── DatacubeGetInterfaceSummaryHourRequest.cs
│ │ │ ├── DatacubeGetInterfaceSummaryRequest.cs
│ │ │ ├── DatacubeGetStreamMsgRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistMonth.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistWeek.cs
│ │ │ ├── DatacubeGetUpStreamMsgHourRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgMonthRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgWeekRequest.cs
│ │ │ ├── DatacubeGetUserCumulateRequest.cs
│ │ │ ├── DatacubeGetUserSummaryRequest.cs
│ │ │ ├── DatacubeGetarticlesummaryRequest.cs
│ │ │ ├── DatacubeGetarticletotalRequest.cs
│ │ │ ├── DatacubeGetuserreadRequest.cs
│ │ │ ├── DatacubeGetuserreadhourRequest.cs
│ │ │ ├── DatacubeGetusershareRequest.cs
│ │ │ ├── DatacubeGetusersharehourRequest.cs
│ │ │ ├── GetCurrentAutoreplyInfoRequest.cs
│ │ │ ├── GetCurrentSelfmenuInfoRequest.cs
│ │ │ ├── GetcallbackipRequest.cs
│ │ │ ├── GroupsCreateRequest.cs
│ │ │ ├── GroupsGetIdRequest.cs
│ │ │ ├── GroupsMembersUpdateRequest.cs
│ │ │ ├── GroupsQueryRequest.cs
│ │ │ ├── GroupsUpdateRequest.cs
│ │ │ ├── MaterialAddNewsRequest.cs
│ │ │ ├── MediaGetRequest.cs
│ │ │ ├── MediaUploadNewsRequest.cs
│ │ │ ├── MediaUploadRequest.cs
│ │ │ ├── MenuCreateRequest.cs
│ │ │ ├── MenuDeleteRequest.cs
│ │ │ ├── MenuGetRequest.cs
│ │ │ ├── MerchantCategoryGetPropertyRequest.cs
│ │ │ ├── MerchantCategoryGetskuRequest.cs
│ │ │ ├── MerchantCategoryGetsubRequest.cs
│ │ │ ├── MerchantCommonUploadimgRequest.cs
│ │ │ ├── MerchantCreateRequest.cs
│ │ │ ├── MerchantDelRequest.cs
│ │ │ ├── MerchantExpressAddRequest.cs
│ │ │ ├── MerchantExpressDelRequest.cs
│ │ │ ├── MerchantExpressGetallRequest.cs
│ │ │ ├── MerchantExpressGetbyidRequest.cs
│ │ │ ├── MerchantExpressUpdateRequest.cs
│ │ │ ├── MerchantGetRequest.cs
│ │ │ ├── MerchantGetbystatus.cs
│ │ │ ├── MerchantGroupAddRequest.cs
│ │ │ ├── MerchantGroupDelRequest.cs
│ │ │ ├── MerchantGroupGetallRequest.cs
│ │ │ ├── MerchantGroupGetbyidRequest.cs
│ │ │ ├── MerchantGroupProductmodRequest.cs
│ │ │ ├── MerchantGroupPropertymodRequest.cs
│ │ │ ├── MerchantModproductstatusRequest.cs
│ │ │ ├── MerchantOrderCloseRequest.cs
│ │ │ ├── MerchantOrderGetbyfilterRequest.cs
│ │ │ ├── MerchantOrderGetbyidRequest.cs
│ │ │ ├── MerchantOrderSetdeliveryRequest.cs
│ │ │ ├── MerchantShelfAddRequest.cs
│ │ │ ├── MerchantShelfDelRequest.cs
│ │ │ ├── MerchantShelfGetallRequest.cs
│ │ │ ├── MerchantShelfGetbyidRequest.cs
│ │ │ ├── MerchantShelfMod.cs
│ │ │ ├── MerchantShelfUpdatestatusRequest.cs
│ │ │ ├── MerchantStockAddRequest.cs
│ │ │ ├── MerchantStockReduceRequest.cs
│ │ │ ├── MerchantUpdateRequest.cs
│ │ │ ├── MessageCustomSendImageRequest.cs
│ │ │ ├── MessageCustomSendMusicRequest.cs
│ │ │ ├── MessageCustomSendNewsRequest.cs
│ │ │ ├── MessageCustomSendRequest.cs
│ │ │ ├── MessageCustomSendTextRequest.cs
│ │ │ ├── MessageCustomSendVideoRequest.cs
│ │ │ ├── MessageCustomSendVoiceRequest.cs
│ │ │ ├── MessageMassDeleteRequest.cs
│ │ │ ├── MessageMassSendAllRequest.cs
│ │ │ ├── MessageMassSendRequest.cs
│ │ │ ├── QrcodeCreateRequest.cs
│ │ │ ├── ShorturlRequest.cs
│ │ │ ├── SnsOAuthAccessTokenRequest.cs
│ │ │ ├── SnsOauthRefreshTokenRequest.cs
│ │ │ ├── SnsUserInfoRequest.cs
│ │ │ ├── TemplateApiaddtemplateRequest.cs
│ │ │ ├── TemplateApisetindustryRequest.cs
│ │ │ ├── TemplateSendRequest.cs
│ │ │ ├── UserGetRequest.cs
│ │ │ ├── UserInfoRequest.cs
│ │ │ └── UserInfoUpdateremarkRequest.cs
│ │ ├── ApiResponses/
│ │ │ ├── AccessTokenCodeResponse.cs
│ │ │ ├── AccessTokenResponse.cs
│ │ │ ├── ApiResponse.cs
│ │ │ ├── CustomServiceGetRecordResponse.cs
│ │ │ ├── CustomserviceGetkflistResponse.cs
│ │ │ ├── CustomserviceGetonlinekflistResponse.cs
│ │ │ ├── CustomserviceKfsessionCloseResponse.cs
│ │ │ ├── CustomserviceKfsessionCreateResponse.cs
│ │ │ ├── CustomserviceKfsessionGetsessionResponse.cs
│ │ │ ├── CustomserviceKfsessionGetsessionlistResponse.cs
│ │ │ ├── CustomserviceKfsessionGetwaitcaseResponse.cs
│ │ │ ├── DatacubeGetArticlesResponse.cs
│ │ │ ├── DatacubeGetInterfaceResponse.cs
│ │ │ ├── DatacubeGetStreamMsgResponse.cs
│ │ │ ├── DatacubeGetUserCumulateResponse.cs
│ │ │ ├── DatacubeGetUserSummaryResponse.cs
│ │ │ ├── DefaultResponse.cs
│ │ │ ├── GetCurrentAutoreplyInfoResponse.cs
│ │ │ ├── GetCurrentSelfmenuInfoResponse.cs
│ │ │ ├── GetcallbackipResponse.cs
│ │ │ ├── GroupCreateResponse.cs
│ │ │ ├── GroupsGetIdResponse.cs
│ │ │ ├── GroupsMembersUpdateResponse.cs
│ │ │ ├── GroupsQueryResponse.cs
│ │ │ ├── GroupsUpdateResponse.cs
│ │ │ ├── MaterialAddNewsResponse.cs
│ │ │ ├── MediaGetResponse.cs
│ │ │ ├── MediaUploadNewsResponse.cs
│ │ │ ├── MediaUploadResponse.cs
│ │ │ ├── MenuCreateResponse.cs
│ │ │ ├── MenuDeleteResponse.cs
│ │ │ ├── MenuGetResponse.cs
│ │ │ ├── MerchantCategoryGetpropertyResponse.cs
│ │ │ ├── MerchantCategoryGetskuResponse.cs
│ │ │ ├── MerchantCategoryGetsubResponse.cs
│ │ │ ├── MerchantCommonUploadimgResponse.cs
│ │ │ ├── MerchantCreateResponse.cs
│ │ │ ├── MerchantExpressAddResponse.cs
│ │ │ ├── MerchantExpressGetallResponse.cs
│ │ │ ├── MerchantExpressGetbyidResponse.cs
│ │ │ ├── MerchantGetResponse.cs
│ │ │ ├── MerchantGetbystatusResponse.cs
│ │ │ ├── MerchantGroupAddResponse.cs
│ │ │ ├── MerchantGroupGetallResponse.cs
│ │ │ ├── MerchantGroupGetbyidResponse.cs
│ │ │ ├── MerchantOrderGetbyfilterResponse.cs
│ │ │ ├── MerchantOrderGetbyidResponse.cs
│ │ │ ├── MerchantShelfAddResponse.cs
│ │ │ ├── MerchantShelfGetallResponse.cs
│ │ │ ├── MerchantShelfGetbyidResponse.cs
│ │ │ ├── MerchantShelfUpdatestatusResponse.cs
│ │ │ ├── MessageCustomSendResponse.cs
│ │ │ ├── MessageMassDeleteResponse.cs
│ │ │ ├── MessageMassSendAllResponse.cs
│ │ │ ├── MessageMassSendResponse.cs
│ │ │ ├── QrcodeCreateResponse.cs
│ │ │ ├── ShorturlResponse.cs
│ │ │ ├── SnsOAuthAccessTokenResponse.cs
│ │ │ ├── SnsUserInfoResponse.cs
│ │ │ ├── TemplateApiaddtemplateResponse.cs
│ │ │ ├── TemplateSendResponse.cs
│ │ │ ├── UserGetResponse.cs
│ │ │ └── UserInfoResponse.cs
│ │ ├── AppIdentication.cs
│ │ ├── ClickButton.cs
│ │ ├── Exceptions/
│ │ │ └── WXApiException.cs
│ │ ├── Group.cs
│ │ ├── MerchantInfoModel.cs
│ │ ├── MiddleMessage.cs
│ │ ├── OrderInfoModel.cs
│ │ ├── PublicMessage.cs
│ │ ├── Request/
│ │ │ ├── RequestClickEventMessage.cs
│ │ │ ├── RequestEventMessage.cs
│ │ │ ├── RequestImageMessage.cs
│ │ │ ├── RequestLinkMessage.cs
│ │ │ ├── RequestLocationEventMessage.cs
│ │ │ ├── RequestLocationMessage.cs
│ │ │ ├── RequestMassSendEventMessage.cs
│ │ │ ├── RequestMessage.cs
│ │ │ ├── RequestOrderEventMessage.cs
│ │ │ ├── RequestQREventMessage.cs
│ │ │ ├── RequestShortVideoMessage.cs
│ │ │ ├── RequestTemplateEventMessage.cs
│ │ │ ├── RequestTextMessage.cs
│ │ │ ├── RequestVideoMessage.cs
│ │ │ ├── RequestViewEventMessage.cs
│ │ │ └── RequestVoiceMessage.cs
│ │ ├── Response/
│ │ │ ├── ResponseImageMessage.cs
│ │ │ ├── ResponseMessage.cs
│ │ │ ├── ResponseMusicMessage.cs
│ │ │ ├── ResponseNewsMessage.cs
│ │ │ ├── ResponseTextMessage.cs
│ │ │ ├── ResponseTransferCustomServiceMessage.cs
│ │ │ ├── ResponseVideoMessage.cs
│ │ │ └── ResponseVoiceMessage.cs
│ │ ├── TemplateDataProperty.cs
│ │ ├── WXEnum.cs
│ │ ├── WXEnum.cs.BASE.cs
│ │ ├── WXEnum.cs.LOCAL.cs
│ │ ├── WXEnum.cs.REMOTE.cs
│ │ ├── WXJsonResult.cs
│ │ └── WXMessage.cs
│ ├── NotHandlerMessage.cs
│ ├── OAuth/
│ │ └── OAuthHelper.cs
│ ├── Pay/
│ │ ├── IPayApiClient.cs
│ │ ├── PayApiClient.cs
│ │ ├── Request/
│ │ │ ├── PayCloseorderRequest.cs
│ │ │ ├── PayDownloadbillRequest.cs
│ │ │ ├── PayOrderqueryRequest.cs
│ │ │ ├── PayRefundQueryRequest.cs
│ │ │ ├── PayRefundRequest.cs
│ │ │ ├── PayRequest.cs
│ │ │ └── PayUnifiedOrderRequest.cs
│ │ └── Response/
│ │ ├── PayCloseorderResponse.cs
│ │ ├── PayDownloadResponse.cs
│ │ ├── PayOrderqueryResponse.cs
│ │ ├── PayRefundQueryResponse.cs
│ │ ├── PayRefundResponse.cs
│ │ ├── PayResponse.cs
│ │ └── PayUnifiedOrderResponse.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── WXFramework.csproj
│ └── packages.config
├── CustomClickMenu/
│ ├── App.config
│ ├── App_Code/
│ │ └── DataGridRow.cs
│ ├── CustomClickMenu.csproj
│ ├── Form1.Designer.cs
│ ├── Form1.cs
│ ├── Form1.resx
│ ├── MenuForm.Designer.cs
│ ├── MenuForm.cs
│ ├── MenuForm.resx
│ ├── Program.cs
│ └── Properties/
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── JCWX.sln
├── LICENSE
├── README.md
├── WebClasses/
│ ├── CnBlogsFeed.cs
│ ├── Command.cs
│ ├── Handlers/
│ │ ├── CnblogsArticleNewsMessageHandler.cs
│ │ ├── CnblogsTextMessageHandler.cs
│ │ ├── DefaultMessageHandler.cs
│ │ ├── SubScribeEventMessageHandler.cs
│ │ ├── TextMessageHandler.cs
│ │ ├── UnSubScribeEventMessageHandler.cs
│ │ └── VoiceMessageHandler.cs
│ ├── MyLog.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── Roles/
│ │ ├── EventMessageRole.cs
│ │ ├── MsgTypeMessageRole.cs
│ │ ├── TextMessageRole.cs
│ │ ├── VoiceMessageRole.cs
│ │ └── WebMessageRole.cs
│ └── WebClasses.csproj
├── WebDemo/
│ ├── OAuthUserInfoDemo.aspx
│ ├── OAuthUserInfoDemo.aspx.cs
│ ├── OAuthUserInfoDemo.aspx.designer.cs
│ ├── Oauth2Demo.aspx
│ ├── Oauth2Demo.aspx.cs
│ ├── Oauth2Demo.aspx.designer.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── QrcodePage.aspx
│ ├── QrcodePage.aspx.cs
│ ├── QrcodePage.aspx.designer.cs
│ ├── WX.aspx
│ ├── WX.aspx.cs
│ ├── WX.aspx.designer.cs
│ ├── Web.Debug.config
│ ├── Web.Release.config
│ ├── Web.config
│ ├── WebDemo.csproj
│ └── packages.config
├── _config.yml
├── packages/
│ ├── Moq.4.2.1402.2112/
│ │ ├── Moq.4.2.1402.2112.nupkg
│ │ ├── Moq.4.2.1402.2112.nuspec
│ │ └── lib/
│ │ ├── net35/
│ │ │ └── Moq.xml
│ │ ├── net40/
│ │ │ └── Moq.xml
│ │ └── sl4/
│ │ └── Moq.Silverlight.xml
│ ├── Newtonsoft.Json.6.0.2/
│ │ ├── Newtonsoft.Json.6.0.2.nupkg
│ │ ├── Newtonsoft.Json.6.0.2.nuspec
│ │ ├── lib/
│ │ │ ├── net20/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net35/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net40/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net45/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── netcore45/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── portable-net40+sl5+wp80+win8+monotouch+monoandroid/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ └── portable-net45+wp80+win8+wpa81/
│ │ │ └── Newtonsoft.Json.xml
│ │ └── tools/
│ │ └── install.ps1
│ ├── QrCode.Net.0.4.0.0/
│ │ ├── QrCode.Net.0.4.0.0.nupkg
│ │ └── lib/
│ │ ├── net35/
│ │ │ └── Gma.QrCodeNet.Encoding.xml
│ │ ├── net40/
│ │ │ └── Gma.QrCodeNet.Encoding.XML
│ │ ├── net45/
│ │ │ └── Gma.QrCodeNet.Encoding.xml
│ │ ├── netcore45/
│ │ │ ├── Gma.QrCodeNet.Encoding.pri
│ │ │ ├── Gma.QrCodeNet.Encoding.xml
│ │ │ └── Themes/
│ │ │ └── Generic.xaml
│ │ └── sl5/
│ │ └── Gma.QrCodeNet.Encoding.xml
│ ├── repositories.config
│ └── xunit.1.9.2/
│ ├── lib/
│ │ └── net20/
│ │ ├── xunit.dll.tdnet
│ │ └── xunit.xml
│ ├── xunit.1.9.2.nupkg
│ └── xunit.1.9.2.nuspec
└── test/
└── FrameworkCoreTest/
├── AccessTokenTest.cs
├── Api/
│ ├── CustomeServiceGetRecordTest.cs
│ ├── CustomserviceKfsessionCloseTest.cs
│ ├── CustomserviceKfsessionCreateTest.cs
│ ├── CustomserviceKfsessionGetsessionTest.cs
│ ├── DAtacubeGetarticletotalTest.cs
│ ├── DatacubeGetInterfaceTest.cs
│ ├── DatacubeGetUpStreamMsgTest.cs
│ ├── DatacubeGetUserCumulateTest.cs
│ ├── DatacubeGetUserSummaryTest.cs
│ ├── DatacubeGetarticlesummaryTest.cs
│ ├── GetCurrentAutoreplyInfoTest.cs
│ ├── GetCurrentSelfmenuInfoTest.cs
│ ├── GroupCreateTest.cs
│ ├── GroupsGetIdTest.cs
│ ├── GroupsMembersUpdateTest.cs
│ ├── GroupsQueryTest.cs
│ ├── GroupsUpdateTest.cs
│ ├── MediaGetTest.cs
│ ├── MediaUploadNewsTest.cs
│ ├── MediaUploadTest.cs
│ ├── MenuCreateTest.cs
│ ├── MenuGetTest.cs
│ ├── MessageCustomSendRequestTest.cs
│ ├── MockGetcallbackipTestTest.cs
│ ├── MockPostApiBaseTest.cs
│ ├── OAuthAccessTokenTest.cs
│ ├── OAuthManagerTest.cs
│ ├── OAuthRefreshTokenTest.cs
│ ├── QrCreatedRequestTestTest.cs
│ ├── RequestMessageTest.cs
│ ├── ResponseMessageTest.cs
│ ├── SNSUserInfoTest.cs
│ ├── ShorturlRequestTestTest.cs
│ ├── UserGetTest.cs
│ └── UserInfoTest.cs
├── App.config
├── BaseTest.cs
├── CustomserviceKfsessionGetsessionlistTest.cs
├── CustomserviceKfsessionGetwaitcaseTest.cs
├── FrameworkCoreTest.csproj
├── Logger.cs
├── Merchant/
│ ├── CreateTest.cs
│ ├── MerchantCategoryGetskuTest.cs
│ ├── MerchantCategoryGetsubTest.cs
│ ├── MerchantCommonUploadimgTest.cs
│ ├── MerchantDelTest.cs
│ ├── MerchantExpressAddTest.cs
│ ├── MerchantExpressDelTest.cs
│ ├── MerchantExpressGetallTest.cs
│ ├── MerchantExpressGetbyidTest.cs
│ ├── MerchantExpressUpdateTest.cs
│ ├── MerchantGetTest.cs
│ ├── MerchantGetbystatus.cs
│ ├── MerchantGetpropertyTest.cs
│ ├── MerchantGroupAddTest.cs
│ ├── MerchantGroupDelTest.cs
│ ├── MerchantGroupGetallTest.cs
│ ├── MerchantGroupGetbyidTest.cs
│ ├── MerchantGroupProductmodTest.cs
│ ├── MerchantGroupPropertymodTest.cs
│ ├── MerchantModproductstatusTest.cs
│ ├── MerchantOrderCloseTest.cs
│ ├── MerchantOrderGetbyfilterTest.cs
│ ├── MerchantOrderGetbyidTest.cs
│ ├── MerchantOrderSetdeliveryTest.cs
│ ├── MerchantShelfAddTest.cs
│ ├── MerchantShelfDelTest.cs
│ ├── MerchantShelfGetallTest.cs
│ ├── MerchantShelfGetbyidTest.cs
│ ├── MerchantShelfUpdatestatusTest.cs
│ ├── MerchantStockAddTest.cs
│ ├── MerchantStockReductTest.cs
│ └── MerchantUpdateTest.cs
├── Pay/
│ ├── PayOrderQueryTest.cs
│ ├── PayRefundTest.cs
│ ├── PayTest.cs
│ ├── PayUnifiedorderTest.cs
│ └── ReallyPayUnifiedorderRequestTest.cs
├── Properties/
│ └── AssemblyInfo.cs
├── Template/
│ ├── TemplateSendTest.cs
│ └── TemplateSetindustrayTest.cs
└── packages.config
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitattributes
================================================
# Auto detect text files and perform LF normalization
* text=auto
# Custom for Visual Studio
*.cs diff=csharp
*.sln merge=union
*.csproj merge=union
*.vbproj merge=union
*.fsproj merge=union
*.dbproj merge=union
# Standard to msysgit
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain
================================================
FILE: .gitignore
================================================
#################
## Eclipse
#################
*.pydevproject
.project
.metadata
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.classpath
.settings/
.loadpath
# External tool builders
.externalToolBuilders/
# Locally stored "Eclipse launch configurations"
*.launch
# CDT-specific
.cproject
# PDT-specific
.buildpath
#################
## Visual Studio
#################
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
# User-specific files
*.suo
*.user
*.sln.docstates
# Build results
[Dd]ebug/
[Rr]elease/
x64/
build/
[Bb]in/
[Oo]bj/
# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*
*_i.c
*_p.c
*.ilk
*.meta
*.obj
*.pch
*.pdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.log
*.scc
# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opensdf
*.sdf
*.cachefile
# Visual Studio profiler
*.psess
*.vsp
*.vspx
# Guidance Automation Toolkit
*.gpState
# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
# TeamCity is a build add-in
_TeamCity*
# DotCover is a Code Coverage Tool
*.dotCover
# NCrunch
*.ncrunch*
.*crunch*.local.xml
# Installshield output folder
[Ee]xpress/
# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html
# Click-Once directory
publish/
# Publish Web Output
*.Publish.xml
*.pubxml
# NuGet Packages Directory
## TODO: If you have NuGet Package Restore enabled, uncomment the next line
#packages/
# Windows Azure Build Output
csx
*.build.csdef
# Windows Store app package directory
AppPackages/
# Others
sql/
*.Cache
ClientBin/
[Ss]tyle[Cc]op.*
~$*
*~
*.dbmdl
*.[Pp]ublish.xml
*.pfx
*.publishsettings
# RIA/Silverlight projects
Generated_Code/
# Backup & report files from converting an old project file to a newer
# Visual Studio version. Backup files are not needed, because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
# SQL Server files
App_Data/*.mdf
App_Data/*.ldf
#############
## Windows detritus
#############
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Mac crap
.DS_Store
#############
## Python
#############
*.py[co]
# Packages
*.egg
*.egg-info
dist/
build/
eggs/
parts/
var/
sdist/
develop-eggs/
.installed.cfg
# Installer logs
pip-log.txt
# Unit test / coverage reports
.coverage
.tox
#Translations
*.mo
#Mr Developer
.mr.developer.cfg
/.vs
/Business/JCSoft.WX.Framework.4.1.0.nupkg
/Business/WXFramework.nuspec
================================================
FILE: Business/Api/DefaultApiClient.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using WX.Common;
using WX.Logger;
using WX.Model.ApiRequests;
using WX.Model.ApiResponses;
namespace WX.Api
{
public class DefaultApiClient : IApiClient
{
public ILogger Logger { get; set; }
public T Execute<T>(ApiRequest<T> request)
where T : ApiResponse, new()
{
request.Validate();
var execResult = DoExecute(request);
T result = null;
try
{
result = JsonConvert.DeserializeObject<T>(execResult);
}
catch(Exception ex)
{
Log(ex.ToString());
result = null;
}
if (result == null )
{
if (request.NotHasResponse)
{
return new T();
}
else
{
throw new WebException();
}
}
return result;
}
public virtual string DoExecute<T>(ApiRequest<T> request)
where T : ApiResponse
{
var url = request.GetUrl();
//Log(url);
var result = String.Empty;
switch (request.Method)
{
case "FILE":
result = HttpHelper.HttpUploadFile(url, request.GetPostContent());
break;
case "POST":
result = HttpHelper.HttpPost(url, request.GetPostContent());
break;
case "GET":
default:
result = HttpHelper.HttpGet(url);
break;
}
return result;
}
public void Log(string content)
{
if (Logger != null)
{
Logger.Log(content);
}
}
}
}
================================================
FILE: Business/Api/IApiClient.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiRequests;
using WX.Model.ApiResponses;
namespace WX.Api
{
public interface IApiClient
{
T Execute<T>(ApiRequest<T> request) where T : ApiResponse, new();
}
}
================================================
FILE: Business/ApiAccessTokenManager.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Api;
using WX.Model;
using System.Configuration;
using WX.Model.Exceptions;
using WX.Model.ApiRequests;
namespace WX.Framework
{
public sealed class ApiAccessTokenManager
{
private ApiAccessTokenManager()
{
if (ConfigurationManager.AppSettings.AllKeys.Contains(s_configAppId) &&
ConfigurationManager.AppSettings.AllKeys.Contains(s_configAppSecret))
{
m_appIdentity = new AppIdentication(
ConfigurationManager.AppSettings[s_configAppId],
ConfigurationManager.AppSettings[s_configAppSecret]);
}
}
private static ApiAccessTokenManager m_instance;
private static object m_lock = new object();
private static string s_configAppId = "wxappid";
private static string s_configAppSecret = "wxappsecret";
public static ApiAccessTokenManager Instance
{
get
{
if (m_instance == null)
{
lock (m_lock)
{
if (m_instance == null)
{
m_instance = new ApiAccessTokenManager();
}
}
}
return m_instance;
}
}
public string GetCurrentToken()
{
if (String.IsNullOrEmpty(Token) ||
DateTime.Now >= ExpireTime)
{
RefeshToken();
}
return Token;
}
private void RefeshToken()
{
if (m_appIdentity == null)
{
throw new WXApiException(-100, "请先设置好AppID与AppSecret");
}
//Console.WriteLine("refesh token");
var now = DateTime.Now;
var request = new AccessTokenRequest(m_appIdentity);
var response = Client.Execute(request);
if (response.IsError)
{
throw new WXApiException(response.ErrorCode, response.ErrorMessage);
}
ExpireTime = now.AddSeconds(response.Expires_In);
Token = response.Access_Token;
}
private IApiClient m_client;
public IApiClient Client
{
get
{
if (m_client == null)
{
m_client = new DefaultApiClient();
}
return m_client;
}
}
private AppIdentication m_appIdentity;
public string Token { get; private set; }
public DateTime ExpireTime { get; private set; }
public void SetAppIdentity(string appId, string appSecret)
{
SetAppIdentity(new AppIdentication(appId, appSecret));
}
public void SetAppIdentity(AppIdentication appIdentity)
{
m_appIdentity = appIdentity;
}
}
}
================================================
FILE: Business/Common/DataSecret.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
namespace WX.Common
{
public static class DataSecret
{
public static string Md5(this string data)
{
var result = "";
MD5 md5 = System.Security.Cryptography.MD5.Create();
byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(data));
for (int i = 0; i < s.Length; i++)
{
// 将得到的字符串使用十六进制类型格式。格式后的字符是小写的字母,如果使用大写(X)则格式后的字符是大写字符
result = result + s[i].ToString("X2");
}
return result;
}
}
}
================================================
FILE: Business/Common/DateTimeExtend.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX
{
public static class DateTimeExtend
{
private const long STANDARD_TIME_STAMP = 621355968000000000;
public static long ConvertToTimeStamp(this DateTime time)
{
return (time.ToUniversalTime().Ticks - STANDARD_TIME_STAMP) / 10000000;
}
public static DateTime ConvertToDateTime(this long timestamp)
{
return new DateTime(timestamp * 10000000 + STANDARD_TIME_STAMP).ToLocalTime();
}
}
}
================================================
FILE: Business/Common/HttpHelper.cs
================================================
using System;
using System.Collections.Generic;
using System.Collections.Specialized;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
namespace WX.Common
{
public static class HttpHelper
{
public static string HttpUploadFile(string url, string file)
{
if (!File.Exists(file))
{
throw new FileNotFoundException();
}
FileInfo fileInfo = new FileInfo(file);
string result = string.Empty;
string boundary = "---------------------------" + DateTime.Now.Ticks.ToString("x");
byte[] boundarybytes = System.Text.Encoding.ASCII.GetBytes("\r\n--" + boundary + "\r\n");
var request = (HttpWebRequest)WebRequest.Create(url);
request.ContentType = "multipart/form-data; boundary=" + boundary;
request.Method = "POST";
request.KeepAlive = true;
var stream = request.GetRequestStream();
stream.Write(boundarybytes, 0, boundarybytes.Length);
var headerTemplate = "Content-Disposition: form-data; name=\"{0}\"; filename=\"{1}\"\r\nContent-Type: {2}\r\n\r\n";
var header = string.Format(headerTemplate, fileInfo.Name, file, GetContentType(fileInfo));
var headerbytes = System.Text.Encoding.UTF8.GetBytes(header);
stream.Write(headerbytes, 0, headerbytes.Length);
var fileStream = new FileStream(file, FileMode.Open, FileAccess.Read);
var buffer = new byte[4096];
var bytesRead = 0;
while ((bytesRead = fileStream.Read(buffer, 0, buffer.Length)) != 0)
{
stream.Write(buffer, 0, bytesRead);
}
fileStream.Close();
var trailer = System.Text.Encoding.ASCII.GetBytes("\r\n--" + boundary + "--\r\n");
stream.Write(trailer, 0, trailer.Length);
stream.Close();
WebResponse wresp = null;
try
{
wresp = request.GetResponse();
Stream stream2 = wresp.GetResponseStream();
StreamReader reader2 = new StreamReader(stream2);
result = reader2.ReadToEnd();
}
finally
{
if (wresp != null)
{
wresp.Close();
wresp = null;
}
}
return result;
}
private static string GetContentType(FileInfo fileInfo)
{
var contentType = "";
switch (fileInfo.Extension.ToLower())
{
case ".jpg":
contentType = "image/jpeg";
break;
case ".mp3":
contentType = "audio/mp3";
break;
case ".amr":
contentType = "audio/amr";
break;
case ".mp4":
contentType = "video/mp4";
break;
default:
throw new NotSupportedException("文件格式不支持");
}
return contentType;
}
public static string HttpGet(string url)
{
HttpWebRequest req = HttpWebRequest.Create(url) as HttpWebRequest;
if (req == null)
throw new ArgumentException();
req.Method = "GET";
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusCode != HttpStatusCode.OK)
throw new WebException("code" + res.StatusCode);
using (var stream = res.GetResponseStream())
using (var reader = new System.IO.StreamReader(stream, Encoding.UTF8))
{
var result = reader.ReadToEnd();
reader.Close();
stream.Close();
//res.Close();
return result;
}
}
public static string HttpPost(string url, string content)
{
HttpWebRequest req = HttpWebRequest.Create(url)
as HttpWebRequest;
if (req == null)
throw new ArgumentException();
var postdate = content;
var postBytes = Encoding.UTF8.GetBytes(postdate);
req.Method = "POST";
req.ContentType = "application/json; charset=utf-8";
req.ContentLength = postBytes.Length;
Stream stream = req.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusCode != HttpStatusCode.OK)
throw new WebException("code" + res.StatusCode);
using (var rstream = res.GetResponseStream())
using (var reader = new System.IO.StreamReader(rstream, Encoding.UTF8))
{
var result = reader.ReadToEnd();
reader.Close();
rstream.Close();
//res.Close();
return result;
}
}
internal static string HttpGetFile(string url)
{
HttpWebRequest req = HttpWebRequest.Create(url)
as HttpWebRequest;
if (req == null)
throw new ArgumentException();
req.Method = "GET";
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusCode != HttpStatusCode.OK)
throw new WebException("code" + res.StatusCode);
using (var stream = res.GetResponseStream())
using (var reader = new System.IO.StreamReader(stream, Encoding.UTF8))
{
var result = reader.ReadToEnd();
reader.Close();
stream.Close();
return result;
}
}
public static string HttpPostXml(string url, string content)
{
HttpWebRequest req = HttpWebRequest.Create(url)
as HttpWebRequest;
if (req == null)
throw new ArgumentException();
var postdate = content;
var postBytes = Encoding.UTF8.GetBytes(postdate);
req.Method = "POST";
req.ContentType = "text/xml; charset=utf-8";
req.ContentLength = postBytes.Length;
Stream stream = req.GetRequestStream();
stream.Write(postBytes, 0, postBytes.Length);
stream.Close();
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
if (res.StatusCode != HttpStatusCode.OK)
throw new WebException("code" + res.StatusCode);
using (var rstream = res.GetResponseStream())
using (var reader = new System.IO.StreamReader(rstream, Encoding.UTF8))
{
var result = reader.ReadToEnd();
reader.Close();
rstream.Close();
//res.Close();
return result;
}
}
}
}
================================================
FILE: Business/Common/ShelfModuleConverter.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model;
namespace WX.Common
{
public class ShelfModuleConverter : JsonConverter
{
public override bool CanConvert(Type objectType)
{
return objectType.IsAssignableFrom(typeof(ShelfModule));
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
if (reader.TokenType == JsonToken.Null)
return null;
ShelfModuleFactory value = new ShelfModuleFactory();
if (value == null)
throw new JsonSerializationException("No object created.");
serializer.Populate(reader, value);
return value.BuildModule();
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotSupportedException("CustomCreationConverter should only be used while deserializing.");
}
public override bool CanWrite
{
get
{
return false;
}
}
}
}
================================================
FILE: Business/CustomAccount.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX
{
public class CustomAccount
{
[JsonProperty("kf_account", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 完整客服账号,格式为:账号前缀@公众号微信号
/// </summary>
public string Account { get; set; }
[JsonProperty("kf_nick", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服昵称
/// </summary>
public string Nick { get; set; }
[JsonProperty("kf_id", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服工号
/// </summary>
public string ID { get; set; }
[JsonProperty("kf_headimg", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 头像
/// </summary>
public string HeadImg { get; set; }
[JsonProperty("status", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服在线状态 1:pc在线,2:手机在线。若pc和手机同时在线则为 1+2=3
/// </summary>
public int Status { get; set; }
[JsonProperty("auto_accept", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服设置的最大自动接入数
/// </summary>
public int AutoAccept { get; set; }
[JsonProperty("accepted_case", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服当前正在接待的会话数
/// </summary>
public int AcceptedCase { get; set; }
[JsonProperty("nickname", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服昵称,最长6个汉字或12个英文字符
/// </summary>
public string NickName { get; set; }
[JsonProperty("password", NullValueHandling = NullValueHandling.Ignore)]
/// <summary>
/// 客服账号登录密码,格式为密码明文的32位加密MD5值
/// </summary>
public string Password { get; set; }
}
}
================================================
FILE: Business/IMessageHandler.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using WX.Model;
namespace WX.Framework
{
public interface IMessageHandler
{
ResponseMessage HandlerRequestMessage(MiddleMessage message);
}
}
================================================
FILE: Business/IMessageRole.cs
================================================
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Xml.Linq;
using WX.Model;
namespace WX.Framework
{
public interface IMessageRole
{
IMessageHandler MessageRole(MiddleMessage message);
}
}
================================================
FILE: Business/Logger/ILogger.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Logger
{
public interface ILogger
{
void Log(string content);
void Warn(string content);
void Error(string content);
void Exception(string content);
}
}
================================================
FILE: Business/Model/ApiRequests/AccessTokenCodeRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class AccessTokenCodeRequest : ApiRequest<AccessTokenCodeResponse>
{
public string Code { get; set; }
public string AppId { get; set; }
public string AppSecret { get; set; }
protected override string UrlFormat => "https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code";
protected override bool NeedToken => false;
internal override string Method => GETMETHOD;
public override string GetPostContent()
{
throw new NotImplementedException();
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AppId, AppSecret, Code);
}
}
}
================================================
FILE: Business/Model/ApiRequests/AccessTokenRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class AccessTokenRequest : ApiRequest<AccessTokenResponse>
{
public AccessTokenRequest(AppIdentication id)
{
AppIdentity = id;
}
public AppIdentication AppIdentity { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AppIdentity.AppID, AppIdentity.AppSecret);
}
protected override bool NeedToken
{
get { return false; }
}
internal override void Validate()
{
if (AppIdentity == null)
{
throw new ArgumentNullException("AppIdentity");
}
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/ApiGetNeedTokenRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public abstract class ApiGetNeedTokenRequest<T> : ApiRequest<T>
where T : ApiResponse
{
internal override string Method
{
get { return GETMETHOD; }
}
protected abstract override string UrlFormat { get; }
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return String.Empty;
}
}
}
================================================
FILE: Business/Model/ApiRequests/ApiPostNeedTokenRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public abstract class ApiPostNeedTokenRequest<T> : ApiRequest<T>
where T : ApiResponse
{
internal override string Method
{
get { return POSTMETHOD; }
}
protected abstract override string UrlFormat { get; }
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/ApiRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Logger;
using WX.Model.ApiResponses;
using WX.Model.Exceptions;
namespace WX.Model.ApiRequests
{
public abstract class ApiRequest<T>
where T : ApiResponse
{
protected const string POSTMETHOD = "POST";
protected const string GETMETHOD = "GET";
protected const string FILEMETHOD = "FILE";
internal abstract string Method { get; }
protected abstract string UrlFormat { get; }
[JsonIgnore]
public ILogger Logger { get; set; }
internal abstract string GetUrl();
protected abstract bool NeedToken { get; }
internal virtual bool NotHasResponse
{
get
{
return false;
}
}
internal virtual void Validate()
{
Log(GetUrl());
if (NeedToken && String.IsNullOrEmpty(AccessToken))
{
Log(new WXApiException(-99, "AccessToken 为空或已过期"));
}
}
public void Log(Exception ex)
{
if (Logger == null)
{
throw ex;
}
else
{
Logger.Log(ex.ToString());
}
}
public void Log(string content)
{
if (Logger != null)
{
Logger.Log(content);
}
}
[JsonIgnore]
public string AccessToken { get; set; }
public abstract string GetPostContent();
}
}
================================================
FILE: Business/Model/ApiRequests/CustomServiceGetRecordRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomServiceGetRecordRequest : ApiRequest<CustomServiceGetRecordResponse>
{
[JsonProperty("starttime")]
internal long StartTimeStamp
{
get
{
return StartTime.ConvertToTimeStamp();
}
}
[JsonIgnore]
public DateTime StartTime { get; set; }
[JsonProperty("endtime")]
internal long EndTimeStamp
{
get
{
return EndTime.ConvertToTimeStamp();
}
}
[JsonIgnore]
public DateTime EndTime { get; set; }
[JsonProperty("openid")]
public string OpenId { get; set; }
[JsonProperty("pagesize")]
public int PageSize { get; set; }
[JsonProperty("pageindex")]
public int PageIndex { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/customservice/getrecord?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (PageSize <= 0 || PageSize > 1000)
{
throw new ArgumentOutOfRangeException("pagesize", "pagesize must in 1 to 1000");
}
if (PageIndex <= 0)
{
PageIndex = 1;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceGetkflistRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceGetkflistRequest : ApiRequest<CustomserviceGetkflistResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/customservice/getkflist?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceGetonlinekflistRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceGetonlinekflistRequest : ApiRequest<CustomserviceGetonlinekflistResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/customservice/getonlinekflist?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfaccountAddRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfaccountAddRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 完整客服账号,格式为:账号前缀@公众号微信号,账号前缀最多10个字符,必须是英文或者数字字符。如果没有公众号微信号,请前往微信公众平台设置。
/// </summary>
[JsonProperty("kf_account")]
public string Account { get; set; }
/// <summary>
/// 客服昵称,最长6个汉字或12个英文字符
/// </summary>
[JsonProperty("nickname")]
public string Nickname { get; set; }
/// <summary>
/// 客服账号登录密码,格式为密码明文的32位加密MD5值
/// </summary>
[JsonProperty("password")]
public string Password { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfaccount/add?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { throw new NotImplementedException(); }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfaccountUpdateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfaccountUpdateRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 完整客服账号,格式为:账号前缀@公众号微信号,账号前缀最多10个字符,必须是英文或者数字字符。如果没有公众号微信号,请前往微信公众平台设置。
/// </summary>
[JsonProperty("kf_account")]
public string Account { get; set; }
/// <summary>
/// 客服昵称,最长6个汉字或12个英文字符
/// </summary>
[JsonProperty("nickname")]
public string Nickname { get; set; }
/// <summary>
/// 客服账号登录密码,格式为密码明文的32位加密MD5值
/// </summary>
[JsonProperty("password")]
public string Password { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfaccount/update?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfaccountUploadheadimgRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfaccountUploadheadimgRequest : ApiRequest<MerchantCategoryGetskuResponse>
{
/// <summary>
/// 文件路径
/// </summary>
public string FilePath { get; set; }
/// <summary>
/// 完整客服账号,格式为:账号前缀@公众号微信号
/// </summary>
[JsonProperty("kf_account")]
public string Account { get; set; }
internal override string Method
{
get { return FILEMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfacount/uploadheadimg?access_token={0}&kf_account={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, Account);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return this.FilePath;
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfsessionCloseRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfsessionCloseRequest : ApiRequest<CustomserviceKfsessionCloseResponse>
{
[JsonProperty("openid")]
public string OpenId { get; set; }
[JsonProperty("kf_account")]
public string KfAccount { get; set; }
[JsonProperty("text")]
public string Text { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfsession/close?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfsessionCreateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfsessionCreateRequest : ApiRequest<CustomserviceKfsessionCreateResponse>
{
[JsonProperty("openid")]
public string OpenId { get; set; }
[JsonProperty("kf_account")]
public string KfAccount { get; set; }
[JsonProperty("text")]
public string Text { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfsession/create?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetsessionRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfsessionGetsessionRequest : ApiGetNeedTokenRequest<CustomserviceKfsessionGetsessionResponse>
{
[JsonProperty("openid")]
public string OpenId { get; set; }
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfsession/getsession?access_token={0}&openid={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, OpenId);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetsessionlistRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfsessionGetsessionlistRequest : ApiGetNeedTokenRequest<CustomserviceKfsessionGetsessionlistResponse>
{
public string KfAccount { get; set; }
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfsession/getsessionlist?access_token={0}&kf_account={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, KfAccount);
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetwaitcaseRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomserviceKfsessionGetwaitcaseRequest : ApiGetNeedTokenRequest<CustomserviceKfsessionGetwaitcaseResponse>
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfsession/getwaitcase?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/CustomservicesKfaccountDelRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class CustomservicesKfaccountDelRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 完整客服账号,格式为:账号前缀@公众号微信号
/// </summary>
[JsonProperty("kf_account")]
public string Account { get; set; }
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/customservice/kfaccount/del?access_token=ACCESS_TOKEN&kf_account=KFACCOUNT"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, Account);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public abstract class DatacubeGetInterfaceRequest : ApiRequest<DatacubeGetInterfaceResponse>
{
[JsonProperty("begin_date")]
public string BeginDate { get; set; }
[JsonProperty("end_date")]
public string EndDate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected abstract override string UrlFormat { get; }
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceSummaryHourRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取接口分析分时数据(getinterfacesummaryhour)
/// </summary>
public class DatacubeGetInterfaceSummaryHourRequest : DatacubeGetInterfaceRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getinterfacesummaryhour?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceSummaryRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取接口分析数据(getinterfacesummary)
/// </summary>
public class DatacubeGetInterfaceSummaryRequest : DatacubeGetInterfaceRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getinterfacesummary?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetStreamMsgRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public abstract class DatacubeGetStreamMsgRequest : ApiRequest<DatacubeGetStreamMsgResponse>
{
[JsonProperty("begin_date")]
public string BeginDate { get; set; }
[JsonProperty("end_date")]
public string EndDate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected abstract override string UrlFormat { get; }
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistMonth.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送分布月数据(getupstreammsgdistmonth)
/// </summary>
public class DatacubeGetUpStreamMsgDistMonth : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsgdistmonth?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送分布数据(getupstreammsgdist)
/// </summary>
public class DatacubeGetUpStreamMsgDistRequest : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsgdist?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistWeek.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送分布周数据(getupstreammsgdistweek)
/// </summary>
public class DatacubeGetUpStreamMsgDistWeek : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsgdist?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgHourRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息分送分时数据(getupstreammsghour)
/// </summary>
public class DatacubeGetUpStreamMsgHourRequest : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsghour?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgMonthRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送月数据(getupstreammsgmonth)
/// </summary>
public class DatacubeGetUpStreamMsgMonthRequest : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsgmonth?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送概况数据(getupstreammsg)
/// </summary>
public class DatacubeGetUpStreamMsgRequest : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsg?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgWeekRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取消息发送周数据(getupstreammsgweek)
/// </summary>
public class DatacubeGetUpStreamMsgWeekRequest : DatacubeGetStreamMsgRequest
{
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getupstreammsgweek?access_token={0}"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUserCumulateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class DatacubeGetUserCumulateRequest : ApiRequest<DatacubeGetUserCumulateResponse>
{
/// <summary>
/// 开始时间,字符串,格式:yyyy-MM-dd
/// </summary>
[JsonProperty("begin_date")]
public string BeginDate { get; set; }
/// <summary>
/// 结束时间,字符串,格式:yyyy-MM-dd
/// </summary>
[JsonProperty("end_date")]
public string EndDate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getusercumulate?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetUserSummaryRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class DatacubeGetUserSummaryRequest : ApiRequest<DatacubeGetUserSummaryResponse>
{
/// <summary>
/// 开始时间,字符串,格式:yyyy-MM-dd
/// </summary>
[JsonProperty("begin_date")]
public string BeginDate { get; set; }
/// <summary>
/// 结束时间,字符串,格式:yyyy-MM-dd
/// </summary>
[JsonProperty("end_date")]
public string EndDate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getusersummary?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetarticlesummaryRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
using WX.Model.Exceptions;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取图文群发每日数据(getarticlesummary)
/// </summary>
public class DatacubeGetarticlesummaryRequest : ApiRequest<DatacubeGetArticlesResponse>
{
/// <summary>
/// 获取数据的起始日期,begin_date和end_date的差值需小于“最大时间跨度”(比如最大时间跨度为1时,begin_date和end_date的差值只能为0,才能小于1),否则会报错
/// </summary>
[JsonProperty("begin_date")]
public string BeginDate { get; set; }
/// <summary>
/// 获取数据的结束日期,end_date允许设置的最大值为昨日
/// </summary>
[JsonProperty("end_date")]
public string EndDate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/datacube/getarticlesummary?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
//Log(this.GetUrl());
base.Validate();
var bdate = DateTime.ParseExact(BeginDate, "yyyy-MM-dd", CultureInfo.CurrentCulture);
var edate = DateTime.ParseExact(EndDate, "yyyy-MM-dd", CultureInfo.CurrentCulture);
if (edate >= DateTime.Today)
{
Log(new ArgumentOutOfRangeException("end_date允许设置的最大值为昨日"));
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetarticletotalRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取图文群发总数据(getarticletotal)
/// </summary>
public class DatacubeGetarticletotalRequest : DatacubeGetarticlesummaryRequest
{
protected override string UrlFormat
{
get
{
return "https://api.weixin.qq.com/datacube/getarticletotal?access_token={0}";
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetuserreadRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取图文统计数据(getuserread)
/// </summary>
public class DatacubeGetuserreadRequest : DatacubeGetarticlesummaryRequest
{
protected override string UrlFormat
{
get
{
return "https://api.weixin.qq.com/datacube/getuserread?access_token={0}";
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetuserreadhourRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取图文统计分时数据(getuserreadhour)
/// </summary>
public class DatacubeGetuserreadhourRequest : DatacubeGetarticlesummaryRequest
{
protected override string UrlFormat
{
get
{
return "https://api.weixin.qq.com/datacube/getuserreadhour?access_token={0}";
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetusershareRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class DatacubeGetusershareRequest : DatacubeGetarticlesummaryRequest
{
protected override string UrlFormat
{
get
{
return "https://api.weixin.qq.com/datacube/getusershare?access_token={0}";
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/DatacubeGetusersharehourRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class DatacubeGetusersharehourRequest : DatacubeGetarticlesummaryRequest
{
protected override string UrlFormat
{
get
{
return "https://api.weixin.qq.com/datacube/getusersharehour?access_token={0}";
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/GetCurrentAutoreplyInfoRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GetCurrentAutoreplyInfoRequest : ApiRequest<GetCurrentAutoreplyInfoResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/get_current_autoreply_info?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return String.Empty;
}
}
}
================================================
FILE: Business/Model/ApiRequests/GetCurrentSelfmenuInfoRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GetCurrentSelfmenuInfoRequest : ApiRequest<GetCurrentSelfmenuInfoResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/get_current_selfmenu_info?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return String.Empty;
}
}
}
================================================
FILE: Business/Model/ApiRequests/GetcallbackipRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 如果公众号基于安全等考虑,需要获知微信服务器的IP地址列表,以便进行相关限制,可以通过该接口获得微信服务器IP地址列表。
/// </summary>
public class GetcallbackipRequest : ApiRequest<GetcallbackipResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/getcallbackip?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/GroupsCreateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GroupsCreateRequest : ApiRequest<GroupCreateResponse>
{
[JsonProperty("group", TypeNameHandling = TypeNameHandling.Objects)]
public Group Group { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/groups/create?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
internal override void Validate()
{
base.Validate();
var namelength = this.Group.Name.Length;
if (namelength < 0 || namelength > 30)
{
throw new ArgumentException("Property Name length between 1 to 30");
}
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(new { group = Group });
}
}
}
================================================
FILE: Business/Model/ApiRequests/GroupsGetIdRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GroupsGetIdRequest : ApiRequest<GroupsGetIdResponse>
{
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/groups/getid?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(new { openid = OpenId });
}
public string OpenId { get; set; }
}
}
================================================
FILE: Business/Model/ApiRequests/GroupsMembersUpdateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GroupsMembersUpdateRequest : ApiRequest<GroupsMembersUpdateResponse>
{
[JsonProperty("openid")]
public string OpenId { get; set; }
[JsonProperty("to_groupid")]
public int ToGroupId { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/groups/members/update?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/GroupsQueryRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GroupsQueryRequest : ApiRequest<GroupsQueryResponse>
{
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/groups/get?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/GroupsUpdateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class GroupsUpdateRequest : ApiRequest<GroupsUpdateResponse>
{
[JsonProperty("group")]
public Group Group { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/groups/update?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MaterialAddNewsRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 新增永久图文素材 Request
/// </summary>
public class MaterialAddNewsRequest : ApiRequest<MaterialAddNewsResponse>
{
[JsonProperty("articles")]
public List<MaterialNews> Articles { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/material/add_news?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MediaGetRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MediaGetRequest : ApiRequest<MediaGetResponse>
{
public string MediaId { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={0}&media_id={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, MediaId);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
internal override bool NotHasResponse
{
get
{
return true;
}
}
internal override void Validate()
{
base.Validate();
if (String.IsNullOrEmpty(MediaId))
{
throw new ArgumentNullException("MediaId is null");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MediaUploadNewsRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MediaUploadNewsRequest : ApiRequest<MediaUploadNewsResponse>
{
[JsonProperty("articles")]
public IEnumerable<ArticleMessage> Articles { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/media/uploadnews?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MediaUploadRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 注意事项
///上传的临时多媒体文件有格式和大小限制,如下:
///图片(image): 1M,支持JPG格式
///语音(voice):2M,播放长度不超过60s,支持AMR\MP3格式
///视频(video):10MB,支持MP4格式
///缩略图(thumb):64KB,支持JPG格式
/// </summary>
public class MediaUploadRequest : ApiRequest<MediaUploadResponse>
{
public string FilePath { get; set; }
public MediaType MediaType { get; set; }
internal override string Method
{
get { return "FILE"; }
}
protected override string UrlFormat
{
get { return "http://file.api.weixin.qq.com/cgi-bin/media/upload?access_token={0}&type={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, MediaType);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return FilePath;
}
internal override void Validate()
{
base.Validate();
FileInfo file = new FileInfo(FilePath);
if (!file.Exists)
{
throw new FileNotFoundException();
}
if (file.Extension != ".jpg" &&
file.Extension != ".amr" &&
file.Extension != ".mp3" &&
file.Extension != ".mp4")
{
throw new NotSupportedException("不支持上传的文件类型");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MenuCreateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
using WX.Model.Exceptions;
namespace WX.Model.ApiRequests
{
public class MenuCreateRequest : ApiRequest<MenuCreateResponse>
{
[JsonProperty("button")]
public IEnumerable<ClickButton> Buttons { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/menu/create?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (Buttons == null)
{
throw new ArgumentNullException("button is null");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MenuDeleteRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public sealed class MenuDeleteRequest : ApiRequest<MenuDeleteResponse>
{
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/menu/delete?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/MenuGetRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MenuGetRequest : ApiRequest<MenuGetResponse>
{
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/menu/get?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantCategoryGetPropertyRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantCategoryGetpropertyRequest : ApiRequest<MerchantCategoryGetpropertyResponse>
{
[JsonProperty("cate_id")]
public long CateID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/category/getproperty?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantCategoryGetskuRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantCategoryGetskuRequest : ApiRequest<MerchantCategoryGetskuResponse>
{
[JsonProperty("cate_id")]
public long CateID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/category/getsku?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantCategoryGetsubRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantCategoryGetsubRequest : ApiRequest<MerchantCategoryGetsubResponse>
{
[JsonProperty("cate_id")]
public long CateID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/category/getsub?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantCommonUploadimgRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantCommonUploadimgRequest : ApiRequest<MerchantCommonUploadimgResponse>
{
public string FilePath { get; set; }
public string FileName { get; set; }
internal override string Method
{
get { return FILEMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/common/upload_img?access_token={0}&filename={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, FileName);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return FilePath;
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantCreateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantCreateRequest : ApiRequest<MerchantCreateResponse>
{
public ProductInfo ProductInfo { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/create?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this.ProductInfo);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantDelRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantDelRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("product_id")]
public string ProductID { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/del?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantExpressAddRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantExpressAddRequest : ApiRequest<MerchantExpressAddResponse>
{
[JsonProperty("delivery_template")]
public DeliveryTemplate DeliveryTemplate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/express/add?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantExpressDelRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantExpressDelRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("template_id")]
public long TemplateID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/express/del?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantExpressGetallRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantExpressGetallRequest : ApiRequest<MerchantExpressGetallResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/express/getall?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantExpressGetbyidRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantExpressGetbyidRequest : ApiRequest<MerchantExpressGetbyidResponse>
{
[JsonProperty("template_id")]
public long TemplateID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/express/getbyid?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantExpressUpdateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantExpressUpdateRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("template_id")]
public long TemplateID { get; set; }
[JsonProperty("delivery_template")]
public DeliveryTemplate DeliveryTemplate { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/express/update?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGetRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGetRequest : ApiRequest<MerchantGetResponse>
{
[JsonProperty("product_id")]
public string ProductID { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/get?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGetbystatus.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGetbystatusRequest : ApiRequest<MerchantGetbystatusResponse>
{
public int Status { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/getbystatus?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (Status < 0 || Status > 2)
{
throw new ArgumentOutOfRangeException("The Status between 0 to 2");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupAddRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupAddRequest : ApiRequest<MerchantGroupAddResponse>
{
[JsonProperty("group_detail")]
public MerchantGroupDetail GroupDetail { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/add?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (this.GroupDetail != null)
{
this.GroupDetail.GroupId = 0;
this.GroupDetail.Product = null;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupDelRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupDelRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("group_id")]
public long GroupID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/del?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupGetallRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupGetallRequest : ApiRequest<MerchantGroupGetallResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/getall?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupGetbyidRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupGetbyidRequest : ApiRequest<MerchantGroupGetbyidResponse>
{
[JsonProperty("group_id")]
public long GroupID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/getbyid?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupProductmodRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupProductmodRequest : ApiRequest<DefaultResponse>
{
public MerchantGroupDetail GroupDetail { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/productmod?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this.GroupDetail);
}
internal override void Validate()
{
base.Validate();
if (this.GroupDetail != null)
{
this.GroupDetail.Name = null;
this.GroupDetail.ProductList = null;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantGroupPropertymodRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantGroupPropertymodRequest : ApiRequest<DefaultResponse>
{
public MerchantGroupDetail GroupDetail { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/group/propertymod?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this.GroupDetail);
}
internal override void Validate()
{
base.Validate();
if (this.GroupDetail != null)
{
this.GroupDetail.Product = null;
this.GroupDetail.ProductList = null;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantModproductstatusRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantModproductstatusRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 商品ID
/// </summary>
[JsonProperty("product_id")]
public string ProductID { get; set; }
/// <summary>
/// 商品上下架标志,0:下架, 1:上架
/// </summary>
[JsonProperty("status")]
public int Status { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/modproductstatus?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (Status < 0 || Status > 1)
{
throw new ArgumentOutOfRangeException("Status is between 0 to 1");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantOrderCloseRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantOrderCloseRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("order_id")]
public string OrderID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/order/clost?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantOrderGetbyfilterRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantOrderGetbyfilterRequest : ApiRequest<MerchantOrderGetbyfilterResponse>
{
[JsonProperty("status", DefaultValueHandling = DefaultValueHandling.Ignore)]
public OrderStatus Status { get; set; }
[JsonIgnore]
public DateTime BeginTime { get; set; }
[JsonIgnore]
public DateTime EndTime { get; set; }
[JsonProperty("begintime")]
internal long JsonBeginTime
{
get
{
return BeginTime.ConvertToTimeStamp();
}
}
[JsonProperty("endtime")]
internal long JsonEndTime
{
get
{
return EndTime.ConvertToTimeStamp();
}
}
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/order/getbyfilter?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantOrderGetbyidRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantOrderGetbyidRequest : ApiRequest<MerchantOrderGetbyidResponse>
{
[JsonProperty("order_id")]
public string OrderID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/order/getbyid?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantOrderSetdeliveryRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantOrderSetdeliveryRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("order_id")]
public string OrderID { get; set; }
[JsonProperty("delivery_company")]
public string DeliveryCompany { get; set; }
[JsonProperty("delivery_track_no")]
public string DeliveryTrackNo { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/order/setdelivery?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfAddRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfAddRequest : ApiRequest<MerchantShelfAddResponse>
{
public MerchantShelfAddRequest()
{
Modules = new List<ShelfModule>();
}
[JsonProperty("shelf_banner", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public string ShelfBanner
{
get
{
if (m_needbanner)
{
return m_shelfbanner;
}
return null;
}
set
{
m_shelfbanner = value;
}
}
private string m_shelfbanner = String.Empty;
private bool m_needbanner = true;
[JsonProperty("shelf_name", Required = Required.Always)]
public string ShelfName { get; set; }
[JsonIgnore]
private ICollection<ShelfModule> Modules { get; set; }
[JsonProperty("shelf_data")]
internal ShelfModulesInfo ShelfData { get; set; }
public void AddModules(ShelfModuleOne one,
ShelfModuleTwo two,
ShelfModuleThree three,
ShelfModuleFour four)
{
Modules.Clear();
if (one != null) Modules.Add(one);
if (two != null) Modules.Add(two);
if (three != null) Modules.Add(three);
if (four != null) Modules.Add(four);
ShelfData = new ShelfModulesInfo(Modules);
}
public void AddModules(ShelfModuleFive five)
{
Modules.Clear();
if (five != null)
Modules.Add(five);
ShelfData = new ShelfModulesInfo(Modules);
m_needbanner = false;
ShelfBanner = String.Empty;
}
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/add?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (Modules == null || !Modules.Any())
{
throw new ArgumentNullException("must add shelfmodule, use addModule function");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfDelRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfDelRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("shelf_id")]
public long ShelfID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/del?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfGetallRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfGetallRequest : ApiRequest<MerchantShelfGetallResponse>
{
internal override string Method
{
get { return GETMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/getall?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfGetbyidRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfGetbyidRequest : ApiRequest<MerchantShelfGetbyidResponse>
{
[JsonProperty("shelf_id")]
public long ShelfID { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/getbyid?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfMod.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfMod : ApiRequest<DefaultResponse>
{
[JsonProperty("shelf_id")]
public long ShelfID { get; set; }
[JsonProperty("shelf_banner", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public string ShelfBanner
{
get
{
if (m_needbanner)
{
return m_shelfbanner;
}
return null;
}
set
{
m_shelfbanner = value;
}
}
private string m_shelfbanner = String.Empty;
private bool m_needbanner = true;
[JsonProperty("shelf_name", Required = Required.Always)]
public string ShelfName { get; set; }
[JsonIgnore]
private ICollection<ShelfModule> Modules { get; set; }
[JsonProperty("shelf_data")]
internal ShelfModulesInfo ShelfData { get; set; }
public void AddModules(ShelfModuleOne one,
ShelfModuleTwo two,
ShelfModuleThree three,
ShelfModuleFour four)
{
Modules.Clear();
if (one != null) Modules.Add(one);
if (two != null) Modules.Add(two);
if (three != null) Modules.Add(three);
if (four != null) Modules.Add(four);
ShelfData = new ShelfModulesInfo(Modules);
}
public void AddModules(ShelfModuleFive five)
{
Modules.Clear();
if (five != null)
Modules.Add(five);
ShelfData = new ShelfModulesInfo(Modules);
m_needbanner = false;
ShelfBanner = String.Empty;
}
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/mod?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantShelfUpdatestatusRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantShelfUpdatestatusRequest : ApiRequest<MerchantShelfUpdatestatusResponse>
{
[JsonProperty("shelf_id")]
public long ShelfID { get; set; }
[JsonProperty("status")]
public int Status { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/shelf/updatestatus?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (Status < 0 || Status > 1)
{
throw new ArgumentOutOfRangeException("只能为0:下架,1:上架");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantStockAddRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantStockAddRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("product_id")]
public string ProductID { get; set; }
[JsonProperty("sku_info")]
/// <summary>
/// sku 信息 ,格式 "id1:vid1;id2:vid2" ,如商品为统 如商品为统 一规格, 则此处赋值为空字符串即可
/// </summary>
public string SkuInfo { get; set; }
[JsonProperty("quantity")]
public int Quantity { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/stock/add?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantStockReduceRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantStockReduceRequest : ApiRequest<DefaultResponse>
{
[JsonProperty("product_id")]
public string ProductID { get; set; }
[JsonProperty("sku_info")]
public string SkuInfo { get; set; }
[JsonProperty("quantity")]
public int Quantity { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/stock/reduce?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MerchantUpdateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MerchantUpdateRequest : ApiRequest<DefaultResponse>
{
public ProductInfo ProductInfo { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/merchant/update?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this.ProductInfo);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendImageRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendImageRequest : MessageCustomSendRequest
{
[JsonProperty("image")]
public ImageMessage Image { get; set; }
public override string MsgType
{
get { return "image"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendMusicRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendMusicRequest : MessageCustomSendRequest
{
public override string MsgType
{
get { return "music"; }
}
public MusicMessage Music { get; set; }
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendNewsRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendNewsRequest : MessageCustomSendRequest
{
public override string MsgType
{
get { return "news"; }
}
[JsonProperty("news")]
public NewsMessage News { get; set; }
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public abstract class MessageCustomSendRequest : ApiRequest<MessageCustomSendResponse>
{
[JsonProperty("touser")]
public string ToUser { get; set; }
[JsonProperty("msgtype")]
public abstract string MsgType { get; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this, Formatting.Indented);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendTextRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendTextRequest : MessageCustomSendRequest
{
[JsonProperty("text")]
public TextMessage Text { get; set; }
public override string MsgType
{
get { return "text"; }
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendVideoRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendVideoRequest : MessageCustomSendRequest
{
public override string MsgType
{
get { return "video"; }
}
[JsonProperty("video")]
public VideoMessage Video { get; set; }
}
}
================================================
FILE: Business/Model/ApiRequests/MessageCustomSendVoiceRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiRequests
{
public class MessageCustomSendVoiceRequest : MessageCustomSendRequest
{
public override string MsgType
{
get { return "voice"; }
}
[JsonProperty("voice")]
public VoiceMessage Voice { get; set; }
}
}
================================================
FILE: Business/Model/ApiRequests/MessageMassDeleteRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MessageMassDeleteRequest : ApiRequest<MessageMassDeleteResponse>
{
[JsonProperty("msgid")]
public int MsgId { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com//cgi-bin/message/mass/delete?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageMassSendAllRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class SendFilter
{
[JsonProperty("group_id")]
public string GroupId { get; set; }
}
public class SendMPNews
{
[JsonProperty("media_id")]
public string MediaId { get; set; }
}
public class MessageMassSendAllRequest : ApiRequest<MessageMassSendAllResponse>
{
[JsonProperty("filter")]
public SendFilter Filter { get; set; }
[JsonProperty("mpnews")]
public SendMPNews MPNews { get; set; }
[JsonProperty("msgtype")]
public string MsgType { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/message/mass/sendall?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/MessageMassSendRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class MessageMassSendRequest : ApiRequest<MessageMassSendResponse>
{
[JsonProperty("touser")]
public string[] ToUsers { get; set; }
[JsonProperty("mpnews")]
public SendMPNews MpNews { get; set; }
[JsonProperty("msgtype")]
public string MsgType { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/message/mass/send?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/QrcodeCreateRequest.cs
================================================
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public enum ActionName
{
NONE,
QR_SCENE,
QR_LIMIT_SCENE
}
public class ActionInfo
{
public Scene Scene { get; set; }
}
public class Scene
{
[JsonProperty("scene_id")]
public int SceneId { get; set; }
}
public class QrcodeCreateRequest : ApiRequest<QrcodeCreateResponse>
{
[JsonProperty("expire_seconds", DefaultValueHandling = DefaultValueHandling.Ignore)]
public int ExpireSeconds { get; set; }
[JsonProperty("action_name", DefaultValueHandling= DefaultValueHandling.Ignore)]
[JsonConverter(typeof(StringEnumConverter))]
public ActionName ActionName { get; set; }
[JsonProperty("action_info")]
public ActionInfo ActionInfo { get; set; }
internal override string Method
{
get { return "POST"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (this.ActionName == ApiRequests.ActionName.QR_SCENE)
{
if (this.ExpireSeconds <= 0 || this.ExpireSeconds > 1800)
{
throw new ArgumentException("临时二维码过期时间必须大于0小于1800秒");
}
}
if (this.ActionName == ApiRequests.ActionName.QR_LIMIT_SCENE)
{
this.ExpireSeconds = 0;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/ShorturlRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public enum ConvertType
{
Long2Short = 0,
Short2Long = 1
}
public class ShorturlRequest : ApiRequest<ShorturlResponse>
{
/// <summary>
/// 此处填long2short,代表长链接转短链接
/// </summary>
[JsonIgnore]
public ConvertType Action { get; set; }
/// <summary>
/// 需要转换的长链接,支持http://、https://、weixin://wxpay 格式的url
/// </summary>
[JsonProperty("long_url")]
public string Url { get; set; }
[JsonProperty("action")]
protected string CAction
{
get
{
return Action.ToString().ToLower();
}
}
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/shorturl?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/SnsOAuthAccessTokenRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class SnsOAuthAccessTokenRequest : ApiRequest<SnsOAuthAccessTokenResponse>
{
public string AppID { get; set; }
public string AppSecret { get; set; }
public string Code { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type=authorization_code"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AppID, AppSecret, Code);
}
protected override bool NeedToken
{
get { return false; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/SnsOauthRefreshTokenRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class SnsOauthRefreshTokenRequest : ApiRequest<SnsOAuthAccessTokenResponse>
{
public string AppID { get; set; }
public string RefreshToken { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/sns/oauth2/refresh_token?appid={0}&grant_type=refresh_token&refresh_token={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AppID, RefreshToken);
}
protected override bool NeedToken
{
get { return false; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/SnsUserInfoRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class SnsUserInfoRequest : ApiRequest<SnsUserInfoResponse>
{
public string OAuthToken { get; set; }
public string OpenId { get; set; }
public Language Lang { get; set; }
private string LangString { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/sns/userinfo?access_token={0}&openid={1}&lang={2}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, OAuthToken, OpenId, LangString);
}
protected override bool NeedToken
{
get { return false; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
internal override void Validate()
{
base.Validate();
if (String.IsNullOrEmpty(OAuthToken))
throw new ArgumentNullException("Need OAuth AccessToken");
if (String.IsNullOrEmpty(OpenId))
throw new ArgumentNullException("Need OpenID");
switch (Lang)
{
case Language.TW:
LangString = "zh_TW";
break;
case Language.EN:
LangString = "en";
break;
case Language.CN:
default:
LangString = "zh_CN";
break;
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/TemplateApiaddtemplateRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 获取模板ID
/// </summary>
public class TemplateApiaddtemplateRequest : ApiRequest<TemplateApiaddtemplateResponse>
{
/// <summary>
/// 模板库中模板的编号,有“TM**”和“OPENTMTM**”等形式
/// </summary>
[JsonProperty("template_id_short")]
public string TemplateIdShort { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/TemplateApisetindustryRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 设置行业可在MP中完成,每月可修改行业1次,账号仅可使用所属行业中相关的模板,为方便第三方开发者,提供通过接口调用的方式来修改账号所属行业,具体如下:
/// </summary>
public class TemplateApisetindustryRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 主行业
/// </summary>
[JsonIgnore]
public TemplateIndustry Industry_id1 { get; set; }
/// <summary>
/// 副行业
/// </summary>
[JsonIgnore]
public TemplateIndustry Industry_id2 { get; set; }
[JsonProperty("industry_id1")]
protected string Id1
{
get
{
return ((int)Industry_id1).ToString();
}
}
[JsonProperty("industry_id2")]
protected string Id2
{
get
{
return ((int)Industry_id2).ToString();
}
}
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiRequests/TemplateSendRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 发送模板消息
/// </summary>
public class TemplateSendRequest : ApiRequest<TemplateSendResponse>
{
/// <summary>
/// 用户的openid
/// </summary>
[JsonProperty("touser")]
public string ToUser { get; set; }
/// <summary>
/// 模板ID
/// </summary>
[JsonProperty("template_id")]
public string TemplateID { get; set; }
[JsonProperty("url")]
public string Url { get; set; }
[JsonProperty("topcolor")]
public string TopColor { get; set; }
/// <summary>
/// 模板内的数据内容
/// </summary>
/// 举例:{{first.Data}}, Data.Add("first", new TemplateDataProperty{Value = "显示文本", Color="颜色"});
[JsonProperty("data")]
public Dictionary<string, TemplateDataProperty> Data { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
internal override void Validate()
{
base.Validate();
if (String.IsNullOrEmpty(this.ToUser))
{
throw new ArgumentNullException("touser is null");
}
if (string.IsNullOrEmpty(this.Url))
{
throw new ArgumentNullException("url is null");
}
if (string.IsNullOrEmpty(this.TemplateID))
{
throw new ArgumentNullException("templateid is null");
}
}
}
}
================================================
FILE: Business/Model/ApiRequests/UserGetRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class UserGetRequest : ApiRequest<UserGetResponse>
{
[JsonProperty("next_openid")]
public string NextOpenId { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/user/get?access_token={0}&next_openid={1}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, NextOpenId);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/UserInfoRequest.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
public class UserInfoRequest : ApiRequest<UserInfoResponse>
{
public string OpenId { get; set; }
public string Lang { get; set; }
internal override string Method
{
get { return "GET"; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/user/info?access_token={0}&openid={1}&lang={2}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken, OpenId, Lang);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
throw new NotImplementedException();
}
}
}
================================================
FILE: Business/Model/ApiRequests/UserInfoUpdateremarkRequest.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Model.ApiResponses;
namespace WX.Model.ApiRequests
{
/// <summary>
/// 设置备注名
/// 开发者可以通过该接口对指定用户设置备注名,该接口暂时开放给微信认证的服务号。
/// </summary>
public class UserInfoUpdateremarkRequest : ApiRequest<DefaultResponse>
{
/// <summary>
/// 用户标识
/// </summary>
[JsonProperty("openid")]
public string OpenId { get; set; }
/// <summary>
/// 新的备注名,长度必须小于30字符
/// </summary>
[JsonProperty("remark")]
public string Remark { get; set; }
internal override string Method
{
get { return POSTMETHOD; }
}
protected override string UrlFormat
{
get { return "https://api.weixin.qq.com/cgi-bin/user/info/updateremark?access_token={0}"; }
}
internal override string GetUrl()
{
return String.Format(UrlFormat, AccessToken);
}
protected override bool NeedToken
{
get { return true; }
}
public override string GetPostContent()
{
return JsonConvert.SerializeObject(this);
}
}
}
================================================
FILE: Business/Model/ApiResponses/AccessTokenCodeResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class AccessTokenCodeResponse : ApiResponse
{
public string Access_Token { get; set; }
public int Expires_in { get; set; }
public string Refresh_token { get; set; }
public string OpenId { get; set; }
public string Scope { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/AccessTokenResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class AccessTokenResponse : ApiResponse
{
public string Access_Token { get; set; }
public int Expires_In { get; set; }
public override string ToString()
{
if (IsError)
return base.ToString();
return String.Format("accesstoken:{0}, expires_in:{1}", Access_Token, Expires_In);
}
}
}
================================================
FILE: Business/Model/ApiResponses/ApiResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public abstract class ApiResponse
{
public bool IsError
{
get
{
return ErrorCode != 0;
}
}
[JsonProperty("errcode")]
public int ErrorCode { get; set; }
[JsonProperty("errmsg")]
public string ErrorMessage { get; set; }
public override string ToString()
{
if (IsError)
{
return String.Format("errcode:{0}, errmsg:{1}", ErrorCode, ErrorMessage);
}
return base.ToString();
}
}
}
================================================
FILE: Business/Model/ApiResponses/CustomServiceGetRecordResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomServiceGetRecordResponse : ApiResponse
{
[JsonProperty("recordlist")]
public IEnumerable<CustomServiceRecord> RecordList;
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceGetkflistResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceGetkflistResponse : ApiResponse
{
[JsonProperty("kf_list")]
public IEnumerable<CustomAccount> Accounts { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceGetonlinekflistResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceGetonlinekflistResponse : ApiResponse
{
[JsonProperty("kf_online_list")]
public IEnumerable<CustomAccount> Account { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceKfsessionCloseResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceKfsessionCloseResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceKfsessionCreateResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceKfsessionCreateResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetsessionResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceKfsessionGetsessionResponse : ApiResponse
{
/// <summary>
/// 正在接待的客服,为空表示没有人在接待
/// </summary>
[JsonProperty("kf_account")]
public string KfAccount { get; set; }
/// <summary>
/// 会话接入的时间
/// </summary>
[JsonProperty("createtime")]
public long Createtime { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetsessionlistResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceKfsessionGetsessionlistResponse : ApiResponse
{
[JsonProperty("sessionlist")]
public IEnumerable<KfSession> SessionList { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetwaitcaseResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class CustomserviceKfsessionGetwaitcaseResponse : ApiResponse
{
[JsonProperty("count")]
public int Count { get; set; }
[JsonProperty("waitcaselist")]
public IEnumerable<WaitCase> WaitCaseList { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DatacubeGetArticlesResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
/// <summary>
/// 所有获取图文统计的Request均得到此Response
/// 1、获取图文群发每日数据 getarticlesummary
/// 2、获取图文群发总数据(getarticletotal)
/// 3、获取图文统计数据(getuserread)
/// 4、获取图文统计分时数据(getuserreadhour)
/// 5、获取图文分享转发数据(getusershare)
/// 6、获取图文分享转发分时数据(getusersharehour)
/// </summary>
public class DatacubeGetArticlesResponse : ApiResponse
{
/// <summary>
/// 返回的图文统计数据列表
/// </summary>
[JsonProperty("list")]
public IEnumerable<DatacubeArticle> Stats { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DatacubeGetInterfaceResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class DatacubeGetInterfaceResponse : ApiResponse
{
[JsonProperty("list")]
public IEnumerable<DatacubeInterface> List { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DatacubeGetStreamMsgResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class DatacubeGetStreamMsgResponse : ApiResponse
{
[JsonProperty("list")]
public IEnumerable<DatacubeMsg> List { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DatacubeGetUserCumulateResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class DatacubeGetUserCumulateResponse : ApiResponse
{
[JsonProperty("list")]
public IEnumerable<UserDatacube> List { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DatacubeGetUserSummaryResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class DatacubeGetUserSummaryResponse : ApiResponse
{
[JsonProperty("list")]
public IEnumerable<UserDatacube> List { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/DefaultResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public sealed class DefaultResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/GetCurrentAutoreplyInfoResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GetCurrentAutoreplyInfoResponse : ApiResponse
{
/// <summary>
/// 关注后自动回复是否开启,0代表未开启,1代表开启
/// </summary>
[JsonProperty("is_add_friend_reply_open")]
public int IsAddFriendReplyOpen { get; set; }
/// <summary>
/// 消息自动回复是否开启,0代表未开启,1代表开启
/// </summary>
[JsonProperty("is_autoreply_open")]
public int IsAutoreplyOpen { get; set; }
/// <summary>
/// 关注后自动回复的信息
/// </summary>
[JsonProperty("add_friend_autoreply_info")]
public AutoReplyInfo AddFriendAutoreplyInfo { get; set; }
/// <summary>
/// 消息自动回复的信息
/// </summary>
[JsonProperty("message_default_autoreply_info")]
public AutoReplyInfo MessageDefaultAutoreplyInfo { get; set; }
/// <summary>
/// 关键词自动回复的信息
/// </summary>
[JsonProperty("keyword_autoreply_info")]
public KeywordAutoreplyInfo KeywordAutoreplyInfo { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/GetCurrentSelfmenuInfoResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GetCurrentSelfmenuInfoResponse : ApiResponse
{
/// <summary>
/// 菜单是否开启,0代表未开启,1代表开启
/// </summary>
[JsonProperty("is_menu_open")]
public int IsMenuOpen { get; set; }
/// <summary>
/// 菜单信息
/// </summary>
[JsonProperty("selfmenu_info")]
public SelfMenuInfo SelfMenuInfo { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/GetcallbackipResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GetcallbackipResponse : ApiResponse
{
/// <summary>
/// 微信服务器IP地址列表
/// </summary>
[JsonProperty("ip_list")]
public IEnumerable<string> IPList { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/GroupCreateResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GroupCreateResponse : ApiResponse
{
public Group Group { get; set; }
public override string ToString()
{
if (IsError)
return base.ToString();
return String.Format("groupname:{0}, groupid:{1}", Group.Name, Group.ID);
}
}
}
================================================
FILE: Business/Model/ApiResponses/GroupsGetIdResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GroupsGetIdResponse : ApiResponse
{
public int GroupId { get; set; }
public override string ToString()
{
if (IsError)
return base.ToString();
return String.Format("groupId:{0}", GroupId);
}
}
}
================================================
FILE: Business/Model/ApiResponses/GroupsMembersUpdateResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GroupsMembersUpdateResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/GroupsQueryResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GroupsQueryResponse : ApiResponse
{
public IEnumerable<Group> Groups { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/GroupsUpdateResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class GroupsUpdateResponse : ApiResponse
{
public override string ToString()
{
if (IsError)
return base.ToString();
return String.Format("success, msg:{0}", ErrorMessage);
}
}
}
================================================
FILE: Business/Model/ApiResponses/MaterialAddNewsResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
/// <summary>
/// 新增永久图文素材 Response
/// </summary>
public class MaterialAddNewsResponse : ApiResponse
{
[JsonProperty("media_id")]
public string MediaId { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MediaGetResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MediaGetResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/MediaUploadNewsResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MediaUploadNewsResponse : ApiResponse
{
public string Type { get; set; }
[JsonProperty("media_id")]
public string MediaId { get; set; }
[JsonProperty("created_at")]
public long CreatedAt { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MediaUploadResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MediaUploadResponse : ApiResponse
{
[JsonProperty("type")]
public MediaType MediaType { get; set; }
[JsonProperty("media_id")]
public string MediaId { get; set; }
[JsonProperty("created_at")]
public long CreatedAt { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MenuCreateResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MenuCreateResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/MenuDeleteResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MenuDeleteResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/MenuGetResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MenuGetResponse : ApiResponse
{
public Menu Menu { get; set; }
}
public class Menu
{
[JsonProperty("button")]
public IEnumerable<ClickButton> Buttons { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantCategoryGetpropertyResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantCategoryGetpropertyResponse : ApiResponse
{
[JsonProperty("properties")]
public IEnumerable<Property> Properties { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantCategoryGetskuResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantCategoryGetskuResponse : ApiResponse
{
[JsonProperty("sku_table")]
public IEnumerable<SkuTable> SkuTables { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantCategoryGetsubResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantCategoryGetsubResponse : ApiResponse
{
[JsonProperty("cate_list")]
public IEnumerable<Cate> CateList { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantCommonUploadimgResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantCommonUploadimgResponse : ApiResponse
{
[JsonProperty("image_url")]
public string ImageUrl { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantCreateResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantCreateResponse : ApiResponse
{
[JsonProperty("product_id")]
public string ProductID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantExpressAddResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
/// <summary>
/// 添加运费模板
/// </summary>
public class MerchantExpressAddResponse : ApiResponse
{
[JsonProperty("template_id")]
public int TemplateID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantExpressGetallResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantExpressGetallResponse : ApiResponse
{
[JsonProperty("templates_info")]
public IEnumerable<DeliveryTemplate> Templates { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantExpressGetbyidResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantExpressGetbyidResponse : ApiResponse
{
[JsonProperty("template_info")]
public DeliveryTemplate TemplateInfo { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantGetResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantGetResponse : ApiResponse
{
[JsonProperty("product_info")]
public ProductInfo ProductInfo { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantGetbystatusResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantGetbystatusResponse : ApiResponse
{
[JsonProperty("products_info")]
public IEnumerable<ProductInfo> ProductInfos { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantGroupAddResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantGroupAddResponse : ApiResponse
{
[JsonProperty("group_id")]
public long GroupID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantGroupGetallResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantGroupGetallResponse : ApiResponse
{
[JsonProperty("groups_detail")]
public IEnumerable<MerchantGroupDetail> GroupsDetail { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantGroupGetbyidResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantGroupGetbyidResponse : ApiResponse
{
[JsonProperty("group_detail")]
public MerchantGroupDetail GroupDetail { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantOrderGetbyfilterResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantOrderGetbyfilterResponse : ApiResponse
{
[JsonProperty("order_list")]
public IEnumerable<OrderInfo> OrderList { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantOrderGetbyidResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantOrderGetbyidResponse : ApiResponse
{
[JsonProperty("order")]
public OrderInfo Order { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantShelfAddResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantShelfAddResponse : ApiResponse
{
[JsonProperty("shelf_id")]
public long ShelfID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantShelfGetallResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantShelfGetallResponse : ApiResponse
{
[JsonProperty("shelves")]
public IEnumerable<ShelfInfo> Shelves { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantShelfGetbyidResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantShelfGetbyidResponse : ApiResponse
{
[JsonProperty("shelf_name", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public string Name { get; set; }
[JsonProperty("shelf_id", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public long ShelfID { get; set; }
[JsonProperty("shelf_banner", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public string Banner { get; set; }
[JsonProperty("shelf_info", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public ShelfModulesInfo ShelfInfo { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MerchantShelfUpdatestatusResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MerchantShelfUpdatestatusResponse : ApiResponse
{
[JsonProperty("shelf_url")]
public string ShelfUrl { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MessageCustomSendResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MessageCustomSendResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/MessageMassDeleteResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MessageMassDeleteResponse : ApiResponse
{
}
}
================================================
FILE: Business/Model/ApiResponses/MessageMassSendAllResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MessageMassSendAllResponse : ApiResponse
{
[JsonProperty("msg_id")]
public int MsgId { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/MessageMassSendResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class MessageMassSendResponse : ApiResponse
{
[JsonProperty("msg_id")]
public int MsgId { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/QrcodeCreateResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class QrcodeCreateResponse : ApiResponse
{
public string Ticket { get; set; }
[JsonProperty("expire_seconds")]
public int ExpireSeconds { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/ShorturlResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class ShorturlResponse : ApiResponse
{
[JsonProperty("short_url")]
public string ShortUrl { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/SnsOAuthAccessTokenResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class SnsOAuthAccessTokenResponse : ApiResponse
{
[JsonProperty("access_token")]
public string AccessToken { get; set; }
[JsonProperty("expires_in")]
public int ExpiresIn { get; set; }
[JsonProperty("refresh_token")]
public string RefreshToken { get; set; }
[JsonProperty("openid")]
public string OpenId { get; set; }
[JsonProperty("scope")]
public string Scope { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/SnsUserInfoResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class SnsUserInfoResponse : ApiResponse
{
public string OpenId { get; set; }
public string NickName { get; set; }
public string Sex { get; set; }
public string Province { get; set; }
public string City { get; set; }
public string Country { get; set; }
[JsonProperty("headimgurl")]
public string HeadImageUrl { get; set; }
[JsonProperty("privilege")]
public IEnumerable<string> Privilege { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/TemplateApiaddtemplateResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class TemplateApiaddtemplateResponse : ApiResponse
{
/// <summary>
/// 模板ID
/// </summary>
[JsonProperty("template_id")]
public string TemplateID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/TemplateSendResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class TemplateSendResponse : ApiResponse
{
/// <summary>
/// 消息ID
/// </summary>
[JsonProperty("msgid")]
public long MsgID { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/UserGetResponse.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class UserGetResponse : ApiResponse
{
public int Total { get; set; }
public int Count { get; set; }
public UserGetData Data { get; set; }
[JsonProperty("next_openid")]
public string NextOpenId { get; set; }
}
public class UserGetData
{
[JsonProperty("openid")]
public string[] OpenIds { get; set; }
}
}
================================================
FILE: Business/Model/ApiResponses/UserInfoResponse.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.ApiResponses
{
public class UserInfoResponse : ApiResponse
{
public bool Subscribe { get; set; }
public string OpenId { get; set; }
public string Nickname { get; set; }
public int Sex { get; set; }
public string City { get; set; }
public string Country { get; set; }
public string Province { get; set; }
public string Language { get; set; }
public string Headimgurl { get; set; }
public int Subscribe_time { get; set; }
public string UnionID { get; set; }
}
}
================================================
FILE: Business/Model/AppIdentication.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model
{
public class AppIdentication
{
public AppIdentication(string appId, string appSecret)
{
this.AppID = appId;
this.AppSecret = appSecret;
}
public string AppID { get; set; }
public string AppSecret { get; set; }
}
}
================================================
FILE: Business/Model/ClickButton.cs
================================================
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model
{
public enum ClickButtonType
{
None,
click,
view,
scancode_waitmsg, //扫码推事件
scancode_push, //扫码推事件且弹出“消息接收中”提示框
pic_sysphoto, //弹出系统拍照发图
pic_photo_or_album, //弹出拍照或者相册发图
pic_weixin, // 弹出微信相册发图器
location_select //弹出地理位置选择器
}
public class ClickButton
{
[JsonProperty("type",
DefaultValueHandling = DefaultValueHandling.Ignore)]
[JsonConverter(typeof(StringEnumConverter))]
public ClickButtonType Type { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("key",
NullValueHandling = NullValueHandling.Ignore)]
public string Key { get; set; }
[JsonProperty("url",
NullValueHandling = NullValueHandling.Ignore)]
public string Url { get; set; }
[JsonProperty("sub_button",
NullValueHandling = NullValueHandling.Ignore)]
public IEnumerable<ClickButton> SubButton { get; set; }
[JsonProperty("news_info", NullValueHandling = NullValueHandling.Ignore)]
public NewsInfo NewsInfo { get; set; }
}
}
================================================
FILE: Business/Model/Exceptions/WXApiException.cs
================================================
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model.Exceptions
{
public class WXApiException : Exception
{
public WXApiException(int code, string content)
{
Code = code;
Content = content;
}
public int Code { get; set; }
public string Content { get; set; }
}
}
================================================
FILE: Business/Model/Group.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace WX.Model
{
public class Group
{
[JsonProperty("id", DefaultValueHandling = DefaultValueHandling.Ignore)]
public int ID { get; set; }
[JsonProperty("name", DefaultValueHandling = DefaultValueHandling.Ignore)]
public string Name { get; set; }
[JsonProperty("count", DefaultValueHandling = DefaultValueHandling.Ignore)]
public int Count { get; set; }
}
}
================================================
FILE: Business/Model/MerchantInfoModel.cs
================================================
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WX.Common;
namespace WX.Model
{
public sealed class ProductInfo
{
[JsonProperty("product_id", NullValueHandling = NullValueHandling.Ignore)]
public string ProductID { get; set; }
/// <summary>
/// 商品基本属性
/// </summary>
[JsonProperty("product_base", NullValueHandling = NullValueHandling.Ignore)]
public Product ProductBase { get; set; }
/// <summary>
/// sku信息列表
/// </summary>
[JsonProperty("sku_list", NullValueHandling = NullValueHandling.Ignore)]
public IEnumerable<Sku> SkuList { get; set; }
/// <summary>
/// 商品其他属性
/// </summary>
[JsonProperty("attrext", NullValueHandling = NullValueHandling.Ignore)]
public Attrext Attrext { get; set; }
/// <summary>
/// 运费信息
/// </summary>
[JsonProperty("delivery_info", NullValueHandling = NullValueHandling.Ignore)]
public Delivery DeliveryInfo { get; set; }
/// <summary>
/// 修改操作 0:删除 1:增加
/// </summary>
[JsonProperty("mod_action", NullValueHandling = NullValueHandling.Ignore, DefaultValueHandling = DefaultValueHandling.Ignore)]
public byte ModAction { get; set; }
}
public class Product
{
/// <summary>
/// 商品分类ID,通过获取【指定分类所有子分类】获取
/// </summary>
[JsonProperty("category_id")]
public string[] Categories { get; set; }
/// <summary>
/// 商品属性列表
/// </summary>
[JsonProperty("property")]
public IEnumerable<ProductProperty> Properties { get; set; }
/// <summary>
/// 商品名称
/// </summary>
[JsonProperty("name")]
public string Name { get; set; }
/// <summary>
/// 商品SKU定义
/// </summary>
[JsonProperty("sku_info")]
public IEnumerable<SkuInfo> SkuInfos { get; set; }
/// <summary>
/// 商品原价
/// </summary>
[JsonProperty("ori_price")]
public float OriPrice { get; set; }
/// <summary>
/// 商品主图
/// </summary>
[JsonProperty("main_img")]
public string MainImage { get; set; }
/// <summary>
/// 商品图片列表
/// </summary>
[JsonProperty("img")]
public string[] Images { get; set; }
/// <summary>
/// 商品详情列表
/// </summary>
[JsonProperty("detail")]
public IEnumerable<ProductDetail> Detail { get; set; }
/// <summary>
/// 用户限购数量
/// </summary>
[JsonProperty("buy_limit")]
public int BuyLimit { get; set; }
}
public sealed class Delivery
{
[JsonProperty("delivery_type")]
public int DeliveryType { get; set; }
[JsonProperty("template_id")]
public int TemplateID { get; set; }
[JsonProperty("express", NullValueHandling = NullValueHandling.Ignore)]
public IEnumerable<Express> Expresses { get; set; }
}
public sealed class Express
{
[JsonProperty("id")]
public int ID { get; set; }
[JsonProperty("price")]
public float Price { get; set; }
}
public sealed class Attrext
{
/// <summary>
/// 是否包邮
/// </summary>
[JsonIgnore]
public bool IsPostFree { get; set; }
[JsonProperty("isPostFree")]
internal int IntIsPostFree
{
get
{
return IsPostFree ? 1 : 0;
}
set
{
IsPostFree = value == 1;
}
}
/// <summary>
/// 是否提供发票
/// </summary>
[JsonIgnore]
public bool IsHasReceipt { get; set; }
[JsonProperty("isHasReceipt")]
internal int IntIsHasReceipt
{
get
{
return IsHasReceipt ? 1 : 0;
}
set
{
IsHasReceipt = value == 1;
}
}
/// <summary>
/// 是否保修
/// </summary>
[JsonIgnore]
public bool IsUnderGuaranty { get; set; }
[JsonProperty("isUnderGuaranty")]
internal int IntIsUnderGuaranty
{
get
{
return IsUnderGuaranty ? 1 : 0;
}
set
{
IsUnderGuaranty = value == 1;
}
}
/// <summary>
/// 是否支持退换货
/// </summary>
[JsonIgnore]
public bool IsSupportReplace { get; set; }
[JsonProperty("isSupportReplace")]
internal int IntIsSupportReplace
{
get
{
return IsSupportReplace ? 1 : 0;
}
set
{
IsSupportReplace = value == 1;
}
}
/// <summary>
/// 商品所在地地址
/// </summary>
[JsonProperty("location")]
public Location Location { get; set; }
}
public sealed class Location
{
[JsonProperty("country")]
public string Country { get; set; }
[JsonProperty("province")]
public string Province { get; set; }
[JsonProperty("city")]
public string City { get; set; }
[JsonProperty("address")]
public string Address { get; set; }
}
public sealed class Sku
{
/// <summary>
/// skuid 格式为:id1:vid1;id2:vid2
/// </summary>
[JsonProperty("sku_id")]
public string SkuID { get; set; }
/// <summary>
/// sku微信价
/// </summary>
[JsonProperty("price")]
public float Price { get; set; }
/// <summary>
/// sku 图片地址
/// </summary>
[JsonProperty("icon_url")]
public string IconUrl { get; set; }
/// <summary>
/// 商家商品编码
/// </summary>
[JsonProperty("product_code")]
public string ProductCode { get; set; }
/// <summary>
/// sku原价格
/// </summary>
[JsonProperty("ori_price")]
public float OriPrice { get; set; }
/// <summary>
/// 库存
/// </summary>
[JsonProperty("quantity")]
public int Quantity { get; set; }
}
public sealed class ProductDetail
{
[JsonProperty("text", NullValueHandling = NullValueHandling.Ignore)]
public string Text { get; set; }
[JsonProperty("img", NullValueHandling = NullValueHandling.Ignore)]
public string Image { get; set; }
}
public sealed class SkuInfo
{
[JsonProperty("id")]
public string ID { get; set; }
[JsonProperty("vid")]
public string[] VID { get; set; }
}
public sealed class ProductProperty
{
[JsonProperty("id")]
public string ID { get; set; }
[JsonProperty("vid")]
public string VID { get; set; }
}
public class Cate
{
[JsonProperty("id")]
/// <summary>
/// 分类ID
/// </summary>
public string Id { get; set; }
[JsonProperty("name")]
/// <summary>
/// 分类名
/// </summary>
public string Name { get; set; }
}
public sealed class SkuTable
{
[JsonProperty("id")]
public string SkuTableID { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("value_list")]
public IEnumerable<SkuValue> ValueList { get; set; }
}
public sealed class SkuValue : Cate
{
}
public sealed class Property
{
[JsonProperty("id")]
public string PropertyID { get; set; }
[JsonProperty("name")]
public string Name { get; set; }
[JsonProperty("property_value")]
public IEnumerable<PropertyValue> PropertyValues { get; set; }
}
public sealed class PropertyValue : Cate
{
}
public sealed class DeliveryTemplate
{
[JsonProperty("id",
NullValueHandling = NullValueHandling.Ignore,
DefaultValueHandling = DefaultValueHandling.Ignore)]
public long ID { get; set; }
/// <summary>
/// 模板名称
/// </summary>
public string Name { get; set; }
/// <summary>
/// 支付方式 0:买家承担运费 1:卖家承担运费
/// </summary>
public int Assumer { get; set; }
/// <summary>
/// 计费单位 0:按件计费 1:按重量计费 2:按体积计费(目前只支持0)
/// </summary>
public int Valuation { get; set; }
[JsonProperty("TopFee")]
public IEnumerable<TopFee> TopFees { get; set; }
}
public class TopFee
{
/// <summary>
/// 快递类型ID 参见快递列表
/// </summary>
[JsonProperty("Type")]
public int FeeType { get; set; }
/// <summary>
/// 默认邮费计费方式
/// </summary>
public NormalFee Normal { get; set; }
/// <summary>
/// 指定地区邮费计费方式
/// </summary>
[JsonProperty("Custom")]
public IEnumerable<CustomFee> Customs { get; set; }
}
public class CustomFee : NormalFee
{
/// <summary>
/// 指定国家
/// </summary>
public string DestCountry { get; set; }
/// <summary>
/// 指定省份
/// </summary>
public string DestProvince { get; set; }
/// <summary>
/// 指定地区
/// </summary>
public string DestCity { get; set; }
}
public class NormalFee
{
/// <summary>
/// 起始计费数量
/// </summary>
public int StartStandards { get; set; }
/// <summary>
/// 起始计费金额(单位:分)
/// </summary>
public int StartFees { get; set; }
/// <summary>
/// 递增计费数量
/// </summary>
public int AddStandards { get; set; }
/// <summary>
/// 递增计费金额 (单位:分)
/// </summary>
public int AddFees { get; set; }
}
public class MerchantGroupDetail
{
[JsonProperty("group_id",
NullValueHandling = NullValueHandling.Ignore,
DefaultValueHandling = DefaultValueHandling.Ignore)]
public long GroupId { get; set; }
[JsonProperty("group_name",
NullValueHandling = NullValueHandling.Ignore,
DefaultValueHandling = DefaultValueHandling.Ignore)]
public string Name { get; set; }
[JsonProperty("product",
NullValueHandling = NullValueHandling.Ignore)]
public IEnumerable<ProductInfo> Product { get; set; }
[JsonProperty("product_list",
NullValueHandling = NullValueHandling.Ignore)]
public string[] ProductList { get; set; }
}
[JsonConverter(typeof(ShelfModuleConverter))]
public abstract class ShelfModule
{
[JsonProperty("eid")]
public abstract int EID { get; }
}
internal class ShelfModuleFactory
{
[JsonProperty("eid")]
public int EID { get; set; }
[JsonProperty("group_info")]
public ShelfGroupInfo GroupInfo { get; set; }
[JsonProperty("group_infos")]
public ShelfGroupInfos GroupInfos { get; set; }
internal ShelfModule BuildModule()
{
ShelfModule module = null;
switch (EID)
{
case 1:
module = new ShelfModuleOne() { GroupInfo = GroupInfo };
break;
case 2:
module = new ShelfModuleTwo() { GroupInfos = GroupInfos };
break;
case 3:
module = new ShelfModuleThree() { GroupInfo = GroupInfo };
break;
case 4:
module = new ShelfModuleFour() { GroupInfos = GroupInfos };
break;
case 5:
module = new ShelfModuleFive { GroupInfos = GroupInfos };
break;
}
if (module == null)
throw new ArgumentException();
return module;
}
}
/// <summary>
/// 控件1
/// </summary>
public class ShelfModuleOne : ShelfModule
{
public ShelfModuleOne() { }
public ShelfModuleOne(long groupId, int count)
{
GroupInfo = new ShelfGroupInfo()
{
Count = count,
GroupID = groupId
};
}
[JsonProperty("eid")]
public override int EID
{
get { return 1; }
}
[JsonProperty("group_info")]
public ShelfGroupInfo GroupInfo { get; set; }
}
/// <summary>
/// 控件2
/// </summary>
public class ShelfModuleTwo : ShelfModule
{
public ShelfModuleTwo() { }
public ShelfModuleTwo(long[] groupIds)
{
GroupInfos = new ShelfGroupInfos(4);
GroupInfos.Groups = groupIds.Select(g => new ShelfGroupInfo() { GroupID = g });
}
[JsonProperty("eid")]
public override int EID
{
get { return 2; }
}
[JsonProperty("group_infos")]
public ShelfGroupInfos GroupInfos { get; set; }
}
/// <summary>
/// 控件3
/// </summary>
public class ShelfModuleThree : ShelfModule
{
public ShelfModuleThree() { }
public ShelfModuleThree(long groupId, string img)
{
GroupInfo = new ShelfGroupInfo { GroupID = groupId, Img = img };
}
[JsonProperty("eid")]
public override int EID
{
get { return 3; }
}
[JsonProperty("group_info")]
public ShelfGroupInfo GroupInfo { get; set; }
}
/// <summary>
/// 控件4
/// </summary>
public class ShelfModuleFour : ShelfModule
{
public ShelfModuleFour() { }
public ShelfModuleFour(IEnumerable<ShelfGroupInfo> groupInfos)
{
var groups = groupInfos.Take(3)
.Select(g => new ShelfGroupInfo()
{
GroupID = g.GroupID,
Img = g.Img
});
GroupInfos = new ShelfGroupInfos(3)
{
Groups = groups
};
}
[JsonProperty("eid")]
public override int EID
{
get { return 4; }
}
[JsonProperty("group_infos")]
public ShelfGroupInfos GroupInfos { get; set; }
}
/// <summary>
/// 控件5
/// </summary>
public class ShelfModuleFive : ShelfModule
{
public ShelfModuleFive() { }
public ShelfModuleFive(long[] groupId, string imgbackupground)
{
GroupInfos = new ShelfGroupInfos(10)
{
Groups = groupId.Take(10)
.Select(s => new ShelfGroupInfo { GroupID = s }),
ImgBackground = imgbackupground
};
}
[JsonProperty("group_infos")]
public ShelfGroupInfos GroupInfos { get; set; }
[JsonProperty("eid", Order=5)]
public override int EID
{
get { return 5; }
}
}
public class ShelfGroupInfos
{
public ShelfGroupInfos(int size)
{
Groups = new ShelfGroupInfo[size];
}
[JsonProperty("groups")]
public IEnumerable<ShelfGroupInfo> Groups { get; set; }
[JsonProperty("img_background", NullValueHandling = NullValueHandling.Ignore)]
public string ImgBackground { get; set; }
}
public class ShelfGroupInfo
{
[JsonConstructor]
public ShelfGroupInfo()
{
}
[JsonProperty("group_id", DefaultValueHandling = DefaultValueHandling.Ignore)]
public long GroupID { get; set; }
[JsonIgnore]
public int Count
{
get { return Filter.Count; }
set
{
if (Filter == null)
{
Filter = new GroupFilter(value);
}
}
}
[JsonProperty("filter", NullValueHandling = NullValueHandling.Ignore)]
internal GroupFilter Filter { get; set; }
internal class GroupFilter
{
[JsonConstructor]
internal GroupFilter() { }
internal GroupFilter(int count)
{
Count = count;
}
gitextract_b2y6yjq7/
├── .gitattributes
├── .gitignore
├── Business/
│ ├── Api/
│ │ ├── DefaultApiClient.cs
│ │ └── IApiClient.cs
│ ├── ApiAccessTokenManager.cs
│ ├── Common/
│ │ ├── DataSecret.cs
│ │ ├── DateTimeExtend.cs
│ │ ├── HttpHelper.cs
│ │ └── ShelfModuleConverter.cs
│ ├── CustomAccount.cs
│ ├── IMessageHandler.cs
│ ├── IMessageRole.cs
│ ├── Logger/
│ │ └── ILogger.cs
│ ├── Model/
│ │ ├── ApiRequests/
│ │ │ ├── AccessTokenCodeRequest.cs
│ │ │ ├── AccessTokenRequest.cs
│ │ │ ├── ApiGetNeedTokenRequest.cs
│ │ │ ├── ApiPostNeedTokenRequest.cs
│ │ │ ├── ApiRequest.cs
│ │ │ ├── CustomServiceGetRecordRequest.cs
│ │ │ ├── CustomserviceGetkflistRequest.cs
│ │ │ ├── CustomserviceGetonlinekflistRequest.cs
│ │ │ ├── CustomserviceKfaccountAddRequest.cs
│ │ │ ├── CustomserviceKfaccountUpdateRequest.cs
│ │ │ ├── CustomserviceKfaccountUploadheadimgRequest.cs
│ │ │ ├── CustomserviceKfsessionCloseRequest.cs
│ │ │ ├── CustomserviceKfsessionCreateRequest.cs
│ │ │ ├── CustomserviceKfsessionGetsessionRequest.cs
│ │ │ ├── CustomserviceKfsessionGetsessionlistRequest.cs
│ │ │ ├── CustomserviceKfsessionGetwaitcaseRequest.cs
│ │ │ ├── CustomservicesKfaccountDelRequest.cs
│ │ │ ├── DatacubeGetInterfaceRequest.cs
│ │ │ ├── DatacubeGetInterfaceSummaryHourRequest.cs
│ │ │ ├── DatacubeGetInterfaceSummaryRequest.cs
│ │ │ ├── DatacubeGetStreamMsgRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistMonth.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgDistWeek.cs
│ │ │ ├── DatacubeGetUpStreamMsgHourRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgMonthRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgRequest.cs
│ │ │ ├── DatacubeGetUpStreamMsgWeekRequest.cs
│ │ │ ├── DatacubeGetUserCumulateRequest.cs
│ │ │ ├── DatacubeGetUserSummaryRequest.cs
│ │ │ ├── DatacubeGetarticlesummaryRequest.cs
│ │ │ ├── DatacubeGetarticletotalRequest.cs
│ │ │ ├── DatacubeGetuserreadRequest.cs
│ │ │ ├── DatacubeGetuserreadhourRequest.cs
│ │ │ ├── DatacubeGetusershareRequest.cs
│ │ │ ├── DatacubeGetusersharehourRequest.cs
│ │ │ ├── GetCurrentAutoreplyInfoRequest.cs
│ │ │ ├── GetCurrentSelfmenuInfoRequest.cs
│ │ │ ├── GetcallbackipRequest.cs
│ │ │ ├── GroupsCreateRequest.cs
│ │ │ ├── GroupsGetIdRequest.cs
│ │ │ ├── GroupsMembersUpdateRequest.cs
│ │ │ ├── GroupsQueryRequest.cs
│ │ │ ├── GroupsUpdateRequest.cs
│ │ │ ├── MaterialAddNewsRequest.cs
│ │ │ ├── MediaGetRequest.cs
│ │ │ ├── MediaUploadNewsRequest.cs
│ │ │ ├── MediaUploadRequest.cs
│ │ │ ├── MenuCreateRequest.cs
│ │ │ ├── MenuDeleteRequest.cs
│ │ │ ├── MenuGetRequest.cs
│ │ │ ├── MerchantCategoryGetPropertyRequest.cs
│ │ │ ├── MerchantCategoryGetskuRequest.cs
│ │ │ ├── MerchantCategoryGetsubRequest.cs
│ │ │ ├── MerchantCommonUploadimgRequest.cs
│ │ │ ├── MerchantCreateRequest.cs
│ │ │ ├── MerchantDelRequest.cs
│ │ │ ├── MerchantExpressAddRequest.cs
│ │ │ ├── MerchantExpressDelRequest.cs
│ │ │ ├── MerchantExpressGetallRequest.cs
│ │ │ ├── MerchantExpressGetbyidRequest.cs
│ │ │ ├── MerchantExpressUpdateRequest.cs
│ │ │ ├── MerchantGetRequest.cs
│ │ │ ├── MerchantGetbystatus.cs
│ │ │ ├── MerchantGroupAddRequest.cs
│ │ │ ├── MerchantGroupDelRequest.cs
│ │ │ ├── MerchantGroupGetallRequest.cs
│ │ │ ├── MerchantGroupGetbyidRequest.cs
│ │ │ ├── MerchantGroupProductmodRequest.cs
│ │ │ ├── MerchantGroupPropertymodRequest.cs
│ │ │ ├── MerchantModproductstatusRequest.cs
│ │ │ ├── MerchantOrderCloseRequest.cs
│ │ │ ├── MerchantOrderGetbyfilterRequest.cs
│ │ │ ├── MerchantOrderGetbyidRequest.cs
│ │ │ ├── MerchantOrderSetdeliveryRequest.cs
│ │ │ ├── MerchantShelfAddRequest.cs
│ │ │ ├── MerchantShelfDelRequest.cs
│ │ │ ├── MerchantShelfGetallRequest.cs
│ │ │ ├── MerchantShelfGetbyidRequest.cs
│ │ │ ├── MerchantShelfMod.cs
│ │ │ ├── MerchantShelfUpdatestatusRequest.cs
│ │ │ ├── MerchantStockAddRequest.cs
│ │ │ ├── MerchantStockReduceRequest.cs
│ │ │ ├── MerchantUpdateRequest.cs
│ │ │ ├── MessageCustomSendImageRequest.cs
│ │ │ ├── MessageCustomSendMusicRequest.cs
│ │ │ ├── MessageCustomSendNewsRequest.cs
│ │ │ ├── MessageCustomSendRequest.cs
│ │ │ ├── MessageCustomSendTextRequest.cs
│ │ │ ├── MessageCustomSendVideoRequest.cs
│ │ │ ├── MessageCustomSendVoiceRequest.cs
│ │ │ ├── MessageMassDeleteRequest.cs
│ │ │ ├── MessageMassSendAllRequest.cs
│ │ │ ├── MessageMassSendRequest.cs
│ │ │ ├── QrcodeCreateRequest.cs
│ │ │ ├── ShorturlRequest.cs
│ │ │ ├── SnsOAuthAccessTokenRequest.cs
│ │ │ ├── SnsOauthRefreshTokenRequest.cs
│ │ │ ├── SnsUserInfoRequest.cs
│ │ │ ├── TemplateApiaddtemplateRequest.cs
│ │ │ ├── TemplateApisetindustryRequest.cs
│ │ │ ├── TemplateSendRequest.cs
│ │ │ ├── UserGetRequest.cs
│ │ │ ├── UserInfoRequest.cs
│ │ │ └── UserInfoUpdateremarkRequest.cs
│ │ ├── ApiResponses/
│ │ │ ├── AccessTokenCodeResponse.cs
│ │ │ ├── AccessTokenResponse.cs
│ │ │ ├── ApiResponse.cs
│ │ │ ├── CustomServiceGetRecordResponse.cs
│ │ │ ├── CustomserviceGetkflistResponse.cs
│ │ │ ├── CustomserviceGetonlinekflistResponse.cs
│ │ │ ├── CustomserviceKfsessionCloseResponse.cs
│ │ │ ├── CustomserviceKfsessionCreateResponse.cs
│ │ │ ├── CustomserviceKfsessionGetsessionResponse.cs
│ │ │ ├── CustomserviceKfsessionGetsessionlistResponse.cs
│ │ │ ├── CustomserviceKfsessionGetwaitcaseResponse.cs
│ │ │ ├── DatacubeGetArticlesResponse.cs
│ │ │ ├── DatacubeGetInterfaceResponse.cs
│ │ │ ├── DatacubeGetStreamMsgResponse.cs
│ │ │ ├── DatacubeGetUserCumulateResponse.cs
│ │ │ ├── DatacubeGetUserSummaryResponse.cs
│ │ │ ├── DefaultResponse.cs
│ │ │ ├── GetCurrentAutoreplyInfoResponse.cs
│ │ │ ├── GetCurrentSelfmenuInfoResponse.cs
│ │ │ ├── GetcallbackipResponse.cs
│ │ │ ├── GroupCreateResponse.cs
│ │ │ ├── GroupsGetIdResponse.cs
│ │ │ ├── GroupsMembersUpdateResponse.cs
│ │ │ ├── GroupsQueryResponse.cs
│ │ │ ├── GroupsUpdateResponse.cs
│ │ │ ├── MaterialAddNewsResponse.cs
│ │ │ ├── MediaGetResponse.cs
│ │ │ ├── MediaUploadNewsResponse.cs
│ │ │ ├── MediaUploadResponse.cs
│ │ │ ├── MenuCreateResponse.cs
│ │ │ ├── MenuDeleteResponse.cs
│ │ │ ├── MenuGetResponse.cs
│ │ │ ├── MerchantCategoryGetpropertyResponse.cs
│ │ │ ├── MerchantCategoryGetskuResponse.cs
│ │ │ ├── MerchantCategoryGetsubResponse.cs
│ │ │ ├── MerchantCommonUploadimgResponse.cs
│ │ │ ├── MerchantCreateResponse.cs
│ │ │ ├── MerchantExpressAddResponse.cs
│ │ │ ├── MerchantExpressGetallResponse.cs
│ │ │ ├── MerchantExpressGetbyidResponse.cs
│ │ │ ├── MerchantGetResponse.cs
│ │ │ ├── MerchantGetbystatusResponse.cs
│ │ │ ├── MerchantGroupAddResponse.cs
│ │ │ ├── MerchantGroupGetallResponse.cs
│ │ │ ├── MerchantGroupGetbyidResponse.cs
│ │ │ ├── MerchantOrderGetbyfilterResponse.cs
│ │ │ ├── MerchantOrderGetbyidResponse.cs
│ │ │ ├── MerchantShelfAddResponse.cs
│ │ │ ├── MerchantShelfGetallResponse.cs
│ │ │ ├── MerchantShelfGetbyidResponse.cs
│ │ │ ├── MerchantShelfUpdatestatusResponse.cs
│ │ │ ├── MessageCustomSendResponse.cs
│ │ │ ├── MessageMassDeleteResponse.cs
│ │ │ ├── MessageMassSendAllResponse.cs
│ │ │ ├── MessageMassSendResponse.cs
│ │ │ ├── QrcodeCreateResponse.cs
│ │ │ ├── ShorturlResponse.cs
│ │ │ ├── SnsOAuthAccessTokenResponse.cs
│ │ │ ├── SnsUserInfoResponse.cs
│ │ │ ├── TemplateApiaddtemplateResponse.cs
│ │ │ ├── TemplateSendResponse.cs
│ │ │ ├── UserGetResponse.cs
│ │ │ └── UserInfoResponse.cs
│ │ ├── AppIdentication.cs
│ │ ├── ClickButton.cs
│ │ ├── Exceptions/
│ │ │ └── WXApiException.cs
│ │ ├── Group.cs
│ │ ├── MerchantInfoModel.cs
│ │ ├── MiddleMessage.cs
│ │ ├── OrderInfoModel.cs
│ │ ├── PublicMessage.cs
│ │ ├── Request/
│ │ │ ├── RequestClickEventMessage.cs
│ │ │ ├── RequestEventMessage.cs
│ │ │ ├── RequestImageMessage.cs
│ │ │ ├── RequestLinkMessage.cs
│ │ │ ├── RequestLocationEventMessage.cs
│ │ │ ├── RequestLocationMessage.cs
│ │ │ ├── RequestMassSendEventMessage.cs
│ │ │ ├── RequestMessage.cs
│ │ │ ├── RequestOrderEventMessage.cs
│ │ │ ├── RequestQREventMessage.cs
│ │ │ ├── RequestShortVideoMessage.cs
│ │ │ ├── RequestTemplateEventMessage.cs
│ │ │ ├── RequestTextMessage.cs
│ │ │ ├── RequestVideoMessage.cs
│ │ │ ├── RequestViewEventMessage.cs
│ │ │ └── RequestVoiceMessage.cs
│ │ ├── Response/
│ │ │ ├── ResponseImageMessage.cs
│ │ │ ├── ResponseMessage.cs
│ │ │ ├── ResponseMusicMessage.cs
│ │ │ ├── ResponseNewsMessage.cs
│ │ │ ├── ResponseTextMessage.cs
│ │ │ ├── ResponseTransferCustomServiceMessage.cs
│ │ │ ├── ResponseVideoMessage.cs
│ │ │ └── ResponseVoiceMessage.cs
│ │ ├── TemplateDataProperty.cs
│ │ ├── WXEnum.cs
│ │ ├── WXEnum.cs.BASE.cs
│ │ ├── WXEnum.cs.LOCAL.cs
│ │ ├── WXEnum.cs.REMOTE.cs
│ │ ├── WXJsonResult.cs
│ │ └── WXMessage.cs
│ ├── NotHandlerMessage.cs
│ ├── OAuth/
│ │ └── OAuthHelper.cs
│ ├── Pay/
│ │ ├── IPayApiClient.cs
│ │ ├── PayApiClient.cs
│ │ ├── Request/
│ │ │ ├── PayCloseorderRequest.cs
│ │ │ ├── PayDownloadbillRequest.cs
│ │ │ ├── PayOrderqueryRequest.cs
│ │ │ ├── PayRefundQueryRequest.cs
│ │ │ ├── PayRefundRequest.cs
│ │ │ ├── PayRequest.cs
│ │ │ └── PayUnifiedOrderRequest.cs
│ │ └── Response/
│ │ ├── PayCloseorderResponse.cs
│ │ ├── PayDownloadResponse.cs
│ │ ├── PayOrderqueryResponse.cs
│ │ ├── PayRefundQueryResponse.cs
│ │ ├── PayRefundResponse.cs
│ │ ├── PayResponse.cs
│ │ └── PayUnifiedOrderResponse.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── WXFramework.csproj
│ └── packages.config
├── CustomClickMenu/
│ ├── App.config
│ ├── App_Code/
│ │ └── DataGridRow.cs
│ ├── CustomClickMenu.csproj
│ ├── Form1.Designer.cs
│ ├── Form1.cs
│ ├── Form1.resx
│ ├── MenuForm.Designer.cs
│ ├── MenuForm.cs
│ ├── MenuForm.resx
│ ├── Program.cs
│ └── Properties/
│ ├── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Settings.Designer.cs
│ └── Settings.settings
├── JCWX.sln
├── LICENSE
├── README.md
├── WebClasses/
│ ├── CnBlogsFeed.cs
│ ├── Command.cs
│ ├── Handlers/
│ │ ├── CnblogsArticleNewsMessageHandler.cs
│ │ ├── CnblogsTextMessageHandler.cs
│ │ ├── DefaultMessageHandler.cs
│ │ ├── SubScribeEventMessageHandler.cs
│ │ ├── TextMessageHandler.cs
│ │ ├── UnSubScribeEventMessageHandler.cs
│ │ └── VoiceMessageHandler.cs
│ ├── MyLog.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── Roles/
│ │ ├── EventMessageRole.cs
│ │ ├── MsgTypeMessageRole.cs
│ │ ├── TextMessageRole.cs
│ │ ├── VoiceMessageRole.cs
│ │ └── WebMessageRole.cs
│ └── WebClasses.csproj
├── WebDemo/
│ ├── OAuthUserInfoDemo.aspx
│ ├── OAuthUserInfoDemo.aspx.cs
│ ├── OAuthUserInfoDemo.aspx.designer.cs
│ ├── Oauth2Demo.aspx
│ ├── Oauth2Demo.aspx.cs
│ ├── Oauth2Demo.aspx.designer.cs
│ ├── Properties/
│ │ └── AssemblyInfo.cs
│ ├── QrcodePage.aspx
│ ├── QrcodePage.aspx.cs
│ ├── QrcodePage.aspx.designer.cs
│ ├── WX.aspx
│ ├── WX.aspx.cs
│ ├── WX.aspx.designer.cs
│ ├── Web.Debug.config
│ ├── Web.Release.config
│ ├── Web.config
│ ├── WebDemo.csproj
│ └── packages.config
├── _config.yml
├── packages/
│ ├── Moq.4.2.1402.2112/
│ │ ├── Moq.4.2.1402.2112.nupkg
│ │ ├── Moq.4.2.1402.2112.nuspec
│ │ └── lib/
│ │ ├── net35/
│ │ │ └── Moq.xml
│ │ ├── net40/
│ │ │ └── Moq.xml
│ │ └── sl4/
│ │ └── Moq.Silverlight.xml
│ ├── Newtonsoft.Json.6.0.2/
│ │ ├── Newtonsoft.Json.6.0.2.nupkg
│ │ ├── Newtonsoft.Json.6.0.2.nuspec
│ │ ├── lib/
│ │ │ ├── net20/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net35/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net40/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── net45/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── netcore45/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ ├── portable-net40+sl5+wp80+win8+monotouch+monoandroid/
│ │ │ │ └── Newtonsoft.Json.xml
│ │ │ └── portable-net45+wp80+win8+wpa81/
│ │ │ └── Newtonsoft.Json.xml
│ │ └── tools/
│ │ └── install.ps1
│ ├── QrCode.Net.0.4.0.0/
│ │ ├── QrCode.Net.0.4.0.0.nupkg
│ │ └── lib/
│ │ ├── net35/
│ │ │ └── Gma.QrCodeNet.Encoding.xml
│ │ ├── net40/
│ │ │ └── Gma.QrCodeNet.Encoding.XML
│ │ ├── net45/
│ │ │ └── Gma.QrCodeNet.Encoding.xml
│ │ ├── netcore45/
│ │ │ ├── Gma.QrCodeNet.Encoding.pri
│ │ │ ├── Gma.QrCodeNet.Encoding.xml
│ │ │ └── Themes/
│ │ │ └── Generic.xaml
│ │ └── sl5/
│ │ └── Gma.QrCodeNet.Encoding.xml
│ ├── repositories.config
│ └── xunit.1.9.2/
│ ├── lib/
│ │ └── net20/
│ │ ├── xunit.dll.tdnet
│ │ └── xunit.xml
│ ├── xunit.1.9.2.nupkg
│ └── xunit.1.9.2.nuspec
└── test/
└── FrameworkCoreTest/
├── AccessTokenTest.cs
├── Api/
│ ├── CustomeServiceGetRecordTest.cs
│ ├── CustomserviceKfsessionCloseTest.cs
│ ├── CustomserviceKfsessionCreateTest.cs
│ ├── CustomserviceKfsessionGetsessionTest.cs
│ ├── DAtacubeGetarticletotalTest.cs
│ ├── DatacubeGetInterfaceTest.cs
│ ├── DatacubeGetUpStreamMsgTest.cs
│ ├── DatacubeGetUserCumulateTest.cs
│ ├── DatacubeGetUserSummaryTest.cs
│ ├── DatacubeGetarticlesummaryTest.cs
│ ├── GetCurrentAutoreplyInfoTest.cs
│ ├── GetCurrentSelfmenuInfoTest.cs
│ ├── GroupCreateTest.cs
│ ├── GroupsGetIdTest.cs
│ ├── GroupsMembersUpdateTest.cs
│ ├── GroupsQueryTest.cs
│ ├── GroupsUpdateTest.cs
│ ├── MediaGetTest.cs
│ ├── MediaUploadNewsTest.cs
│ ├── MediaUploadTest.cs
│ ├── MenuCreateTest.cs
│ ├── MenuGetTest.cs
│ ├── MessageCustomSendRequestTest.cs
│ ├── MockGetcallbackipTestTest.cs
│ ├── MockPostApiBaseTest.cs
│ ├── OAuthAccessTokenTest.cs
│ ├── OAuthManagerTest.cs
│ ├── OAuthRefreshTokenTest.cs
│ ├── QrCreatedRequestTestTest.cs
│ ├── RequestMessageTest.cs
│ ├── ResponseMessageTest.cs
│ ├── SNSUserInfoTest.cs
│ ├── ShorturlRequestTestTest.cs
│ ├── UserGetTest.cs
│ └── UserInfoTest.cs
├── App.config
├── BaseTest.cs
├── CustomserviceKfsessionGetsessionlistTest.cs
├── CustomserviceKfsessionGetwaitcaseTest.cs
├── FrameworkCoreTest.csproj
├── Logger.cs
├── Merchant/
│ ├── CreateTest.cs
│ ├── MerchantCategoryGetskuTest.cs
│ ├── MerchantCategoryGetsubTest.cs
│ ├── MerchantCommonUploadimgTest.cs
│ ├── MerchantDelTest.cs
│ ├── MerchantExpressAddTest.cs
│ ├── MerchantExpressDelTest.cs
│ ├── MerchantExpressGetallTest.cs
│ ├── MerchantExpressGetbyidTest.cs
│ ├── MerchantExpressUpdateTest.cs
│ ├── MerchantGetTest.cs
│ ├── MerchantGetbystatus.cs
│ ├── MerchantGetpropertyTest.cs
│ ├── MerchantGroupAddTest.cs
│ ├── MerchantGroupDelTest.cs
│ ├── MerchantGroupGetallTest.cs
│ ├── MerchantGroupGetbyidTest.cs
│ ├── MerchantGroupProductmodTest.cs
│ ├── MerchantGroupPropertymodTest.cs
│ ├── MerchantModproductstatusTest.cs
│ ├── MerchantOrderCloseTest.cs
│ ├── MerchantOrderGetbyfilterTest.cs
│ ├── MerchantOrderGetbyidTest.cs
│ ├── MerchantOrderSetdeliveryTest.cs
│ ├── MerchantShelfAddTest.cs
│ ├── MerchantShelfDelTest.cs
│ ├── MerchantShelfGetallTest.cs
│ ├── MerchantShelfGetbyidTest.cs
│ ├── MerchantShelfUpdatestatusTest.cs
│ ├── MerchantStockAddTest.cs
│ ├── MerchantStockReductTest.cs
│ └── MerchantUpdateTest.cs
├── Pay/
│ ├── PayOrderQueryTest.cs
│ ├── PayRefundTest.cs
│ ├── PayTest.cs
│ ├── PayUnifiedorderTest.cs
│ └── ReallyPayUnifiedorderRequestTest.cs
├── Properties/
│ └── AssemblyInfo.cs
├── Template/
│ ├── TemplateSendTest.cs
│ └── TemplateSetindustrayTest.cs
└── packages.config
SYMBOL INDEX (1056 symbols across 346 files)
FILE: Business/Api/DefaultApiClient.cs
class DefaultApiClient (line 15) | public class DefaultApiClient : IApiClient
method Execute (line 19) | public T Execute<T>(ApiRequest<T> request)
method DoExecute (line 51) | public virtual string DoExecute<T>(ApiRequest<T> request)
method Log (line 75) | public void Log(string content)
FILE: Business/Api/IApiClient.cs
type IApiClient (line 10) | public interface IApiClient
method Execute (line 12) | T Execute<T>(ApiRequest<T> request) where T : ApiResponse, new();
FILE: Business/ApiAccessTokenManager.cs
class ApiAccessTokenManager (line 13) | public sealed class ApiAccessTokenManager
method ApiAccessTokenManager (line 15) | private ApiAccessTokenManager()
method GetCurrentToken (line 49) | public string GetCurrentToken()
method RefeshToken (line 60) | private void RefeshToken()
method SetAppIdentity (line 100) | public void SetAppIdentity(string appId, string appSecret)
method SetAppIdentity (line 105) | public void SetAppIdentity(AppIdentication appIdentity)
FILE: Business/Common/DataSecret.cs
class DataSecret (line 9) | public static class DataSecret
method Md5 (line 11) | public static string Md5(this string data)
FILE: Business/Common/DateTimeExtend.cs
class DateTimeExtend (line 8) | public static class DateTimeExtend
method ConvertToTimeStamp (line 12) | public static long ConvertToTimeStamp(this DateTime time)
method ConvertToDateTime (line 17) | public static DateTime ConvertToDateTime(this long timestamp)
FILE: Business/Common/HttpHelper.cs
class HttpHelper (line 11) | public static class HttpHelper
method HttpUploadFile (line 13) | public static string HttpUploadFile(string url, string file)
method GetContentType (line 75) | private static string GetContentType(FileInfo fileInfo)
method HttpGet (line 99) | public static string HttpGet(string url)
method HttpPost (line 122) | public static string HttpPost(string url, string content)
method HttpGetFile (line 155) | internal static string HttpGetFile(string url)
method HttpPostXml (line 177) | public static string HttpPostXml(string url, string content)
FILE: Business/Common/ShelfModuleConverter.cs
class ShelfModuleConverter (line 10) | public class ShelfModuleConverter : JsonConverter
method CanConvert (line 12) | public override bool CanConvert(Type objectType)
method ReadJson (line 17) | public override object ReadJson(JsonReader reader, Type objectType, ob...
method WriteJson (line 30) | public override void WriteJson(JsonWriter writer, object value, JsonSe...
FILE: Business/CustomAccount.cs
class CustomAccount (line 9) | public class CustomAccount
FILE: Business/IMessageHandler.cs
type IMessageHandler (line 10) | public interface IMessageHandler
method HandlerRequestMessage (line 12) | ResponseMessage HandlerRequestMessage(MiddleMessage message);
FILE: Business/IMessageRole.cs
type IMessageRole (line 11) | public interface IMessageRole
method MessageRole (line 13) | IMessageHandler MessageRole(MiddleMessage message);
FILE: Business/Logger/ILogger.cs
type ILogger (line 8) | public interface ILogger
method Log (line 10) | void Log(string content);
method Warn (line 12) | void Warn(string content);
method Error (line 14) | void Error(string content);
method Exception (line 16) | void Exception(string content);
FILE: Business/Model/ApiRequests/AccessTokenCodeRequest.cs
class AccessTokenCodeRequest (line 9) | public class AccessTokenCodeRequest : ApiRequest<AccessTokenCodeResponse>
method GetPostContent (line 21) | public override string GetPostContent()
method GetUrl (line 26) | internal override string GetUrl()
FILE: Business/Model/ApiRequests/AccessTokenRequest.cs
class AccessTokenRequest (line 9) | public class AccessTokenRequest : ApiRequest<AccessTokenResponse>
method AccessTokenRequest (line 11) | public AccessTokenRequest(AppIdentication id)
method GetUrl (line 28) | internal override string GetUrl()
method Validate (line 38) | internal override void Validate()
method GetPostContent (line 46) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/ApiGetNeedTokenRequest.cs
class ApiGetNeedTokenRequest (line 9) | public abstract class ApiGetNeedTokenRequest<T> : ApiRequest<T>
method GetUrl (line 20) | internal override string GetUrl()
method GetPostContent (line 30) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/ApiPostNeedTokenRequest.cs
class ApiPostNeedTokenRequest (line 10) | public abstract class ApiPostNeedTokenRequest<T> : ApiRequest<T>
method GetUrl (line 20) | internal override string GetUrl()
method GetPostContent (line 30) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/ApiRequest.cs
class ApiRequest (line 12) | public abstract class ApiRequest<T>
method GetUrl (line 26) | internal abstract string GetUrl();
method Validate (line 38) | internal virtual void Validate()
method Log (line 47) | public void Log(Exception ex)
method Log (line 59) | public void Log(string content)
method GetPostContent (line 70) | public abstract string GetPostContent();
FILE: Business/Model/ApiRequests/CustomServiceGetRecordRequest.cs
class CustomServiceGetRecordRequest (line 10) | public class CustomServiceGetRecordRequest : ApiRequest<CustomServiceGet...
method GetUrl (line 55) | internal override string GetUrl()
method GetPostContent (line 65) | public override string GetPostContent()
method Validate (line 70) | internal override void Validate()
FILE: Business/Model/ApiRequests/CustomserviceGetkflistRequest.cs
class CustomserviceGetkflistRequest (line 11) | public class CustomserviceGetkflistRequest : ApiRequest<CustomserviceGet...
method GetUrl (line 23) | internal override string GetUrl()
method GetPostContent (line 33) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceGetonlinekflistRequest.cs
class CustomserviceGetonlinekflistRequest (line 9) | public class CustomserviceGetonlinekflistRequest : ApiRequest<Customserv...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfaccountAddRequest.cs
class CustomserviceKfaccountAddRequest (line 10) | public class CustomserviceKfaccountAddRequest : ApiRequest<DefaultResponse>
method GetUrl (line 40) | internal override string GetUrl()
method GetPostContent (line 50) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfaccountUpdateRequest.cs
class CustomserviceKfaccountUpdateRequest (line 10) | public class CustomserviceKfaccountUpdateRequest : ApiRequest<DefaultRes...
method GetUrl (line 40) | internal override string GetUrl()
method GetPostContent (line 50) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfaccountUploadheadimgRequest.cs
class CustomserviceKfaccountUploadheadimgRequest (line 10) | public class CustomserviceKfaccountUploadheadimgRequest : ApiRequest<Mer...
method GetUrl (line 33) | internal override string GetUrl()
method GetPostContent (line 43) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfsessionCloseRequest.cs
class CustomserviceKfsessionCloseRequest (line 10) | public class CustomserviceKfsessionCloseRequest : ApiRequest<Customservi...
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfsessionCreateRequest.cs
class CustomserviceKfsessionCreateRequest (line 10) | public class CustomserviceKfsessionCreateRequest : ApiRequest<Customserv...
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetsessionRequest.cs
class CustomserviceKfsessionGetsessionRequest (line 10) | public class CustomserviceKfsessionGetsessionRequest : ApiGetNeedTokenRe...
method GetUrl (line 21) | internal override string GetUrl()
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetsessionlistRequest.cs
class CustomserviceKfsessionGetsessionlistRequest (line 9) | public class CustomserviceKfsessionGetsessionlistRequest : ApiGetNeedTok...
method GetUrl (line 18) | internal override string GetUrl()
FILE: Business/Model/ApiRequests/CustomserviceKfsessionGetwaitcaseRequest.cs
class CustomserviceKfsessionGetwaitcaseRequest (line 9) | public class CustomserviceKfsessionGetwaitcaseRequest : ApiGetNeedTokenR...
FILE: Business/Model/ApiRequests/CustomservicesKfaccountDelRequest.cs
class CustomservicesKfaccountDelRequest (line 10) | public class CustomservicesKfaccountDelRequest : ApiRequest<DefaultRespo...
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceRequest.cs
class DatacubeGetInterfaceRequest (line 10) | public abstract class DatacubeGetInterfaceRequest : ApiRequest<Datacube...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceSummaryHourRequest.cs
class DatacubeGetInterfaceSummaryHourRequest (line 11) | public class DatacubeGetInterfaceSummaryHourRequest : DatacubeGetInterfa...
FILE: Business/Model/ApiRequests/DatacubeGetInterfaceSummaryRequest.cs
class DatacubeGetInterfaceSummaryRequest (line 11) | public class DatacubeGetInterfaceSummaryRequest : DatacubeGetInterfaceRe...
FILE: Business/Model/ApiRequests/DatacubeGetStreamMsgRequest.cs
class DatacubeGetStreamMsgRequest (line 10) | public abstract class DatacubeGetStreamMsgRequest : ApiRequest<DatacubeG...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistMonth.cs
class DatacubeGetUpStreamMsgDistMonth (line 11) | public class DatacubeGetUpStreamMsgDistMonth : DatacubeGetStreamMsgRequest
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistRequest.cs
class DatacubeGetUpStreamMsgDistRequest (line 11) | public class DatacubeGetUpStreamMsgDistRequest : DatacubeGetStreamMsgReq...
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistWeek.cs
class DatacubeGetUpStreamMsgDistWeek (line 11) | public class DatacubeGetUpStreamMsgDistWeek : DatacubeGetStreamMsgRequest
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgHourRequest.cs
class DatacubeGetUpStreamMsgHourRequest (line 11) | public class DatacubeGetUpStreamMsgHourRequest : DatacubeGetStreamMsgReq...
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgMonthRequest.cs
class DatacubeGetUpStreamMsgMonthRequest (line 11) | public class DatacubeGetUpStreamMsgMonthRequest : DatacubeGetStreamMsgRe...
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgRequest.cs
class DatacubeGetUpStreamMsgRequest (line 11) | public class DatacubeGetUpStreamMsgRequest : DatacubeGetStreamMsgRequest
FILE: Business/Model/ApiRequests/DatacubeGetUpStreamMsgWeekRequest.cs
class DatacubeGetUpStreamMsgWeekRequest (line 11) | public class DatacubeGetUpStreamMsgWeekRequest : DatacubeGetStreamMsgReq...
FILE: Business/Model/ApiRequests/DatacubeGetUserCumulateRequest.cs
class DatacubeGetUserCumulateRequest (line 10) | public class DatacubeGetUserCumulateRequest : ApiRequest<DatacubeGetUser...
method GetUrl (line 34) | internal override string GetUrl()
method GetPostContent (line 44) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/DatacubeGetUserSummaryRequest.cs
class DatacubeGetUserSummaryRequest (line 10) | public class DatacubeGetUserSummaryRequest : ApiRequest<DatacubeGetUserS...
method GetUrl (line 34) | internal override string GetUrl()
method GetPostContent (line 44) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/DatacubeGetarticlesummaryRequest.cs
class DatacubeGetarticlesummaryRequest (line 15) | public class DatacubeGetarticlesummaryRequest : ApiRequest<DatacubeGetAr...
method GetUrl (line 39) | internal override string GetUrl()
method GetPostContent (line 49) | public override string GetPostContent()
method Validate (line 54) | internal override void Validate()
FILE: Business/Model/ApiRequests/DatacubeGetarticletotalRequest.cs
class DatacubeGetarticletotalRequest (line 11) | public class DatacubeGetarticletotalRequest : DatacubeGetarticlesummaryR...
FILE: Business/Model/ApiRequests/DatacubeGetuserreadRequest.cs
class DatacubeGetuserreadRequest (line 11) | public class DatacubeGetuserreadRequest : DatacubeGetarticlesummaryRequest
FILE: Business/Model/ApiRequests/DatacubeGetuserreadhourRequest.cs
class DatacubeGetuserreadhourRequest (line 11) | public class DatacubeGetuserreadhourRequest : DatacubeGetarticlesummaryR...
FILE: Business/Model/ApiRequests/DatacubeGetusershareRequest.cs
class DatacubeGetusershareRequest (line 8) | public class DatacubeGetusershareRequest : DatacubeGetarticlesummaryRequest
FILE: Business/Model/ApiRequests/DatacubeGetusersharehourRequest.cs
class DatacubeGetusersharehourRequest (line 8) | public class DatacubeGetusersharehourRequest : DatacubeGetarticlesummary...
FILE: Business/Model/ApiRequests/GetCurrentAutoreplyInfoRequest.cs
class GetCurrentAutoreplyInfoRequest (line 9) | public class GetCurrentAutoreplyInfoRequest : ApiRequest<GetCurrentAutor...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GetCurrentSelfmenuInfoRequest.cs
class GetCurrentSelfmenuInfoRequest (line 9) | public class GetCurrentSelfmenuInfoRequest : ApiRequest<GetCurrentSelfme...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GetcallbackipRequest.cs
class GetcallbackipRequest (line 12) | public class GetcallbackipRequest : ApiRequest<GetcallbackipResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GroupsCreateRequest.cs
class GroupsCreateRequest (line 10) | public class GroupsCreateRequest : ApiRequest<GroupCreateResponse>
method GetUrl (line 25) | internal override string GetUrl()
method Validate (line 35) | internal override void Validate()
method GetPostContent (line 45) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GroupsGetIdRequest.cs
class GroupsGetIdRequest (line 10) | public class GroupsGetIdRequest : ApiRequest<GroupsGetIdResponse>
method GetUrl (line 22) | internal override string GetUrl()
method GetPostContent (line 32) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GroupsMembersUpdateRequest.cs
class GroupsMembersUpdateRequest (line 10) | public class GroupsMembersUpdateRequest : ApiRequest<GroupsMembersUpdate...
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GroupsQueryRequest.cs
class GroupsQueryRequest (line 9) | public class GroupsQueryRequest : ApiRequest<GroupsQueryResponse>
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/GroupsUpdateRequest.cs
class GroupsUpdateRequest (line 10) | public class GroupsUpdateRequest : ApiRequest<GroupsUpdateResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MaterialAddNewsRequest.cs
class MaterialAddNewsRequest (line 13) | public class MaterialAddNewsRequest : ApiRequest<MaterialAddNewsResponse>
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MediaGetRequest.cs
class MediaGetRequest (line 9) | public class MediaGetRequest : ApiRequest<MediaGetResponse>
method GetUrl (line 23) | internal override string GetUrl()
method GetPostContent (line 33) | public override string GetPostContent()
method Validate (line 46) | internal override void Validate()
FILE: Business/Model/ApiRequests/MediaUploadNewsRequest.cs
class MediaUploadNewsRequest (line 10) | public class MediaUploadNewsRequest : ApiRequest<MediaUploadNewsResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MediaUploadRequest.cs
class MediaUploadRequest (line 18) | public class MediaUploadRequest : ApiRequest<MediaUploadResponse>
method GetUrl (line 34) | internal override string GetUrl()
method GetPostContent (line 44) | public override string GetPostContent()
method Validate (line 49) | internal override void Validate()
FILE: Business/Model/ApiRequests/MenuCreateRequest.cs
class MenuCreateRequest (line 11) | public class MenuCreateRequest : ApiRequest<MenuCreateResponse>
method GetUrl (line 26) | internal override string GetUrl()
method GetPostContent (line 36) | public override string GetPostContent()
method Validate (line 41) | internal override void Validate()
FILE: Business/Model/ApiRequests/MenuDeleteRequest.cs
class MenuDeleteRequest (line 9) | public sealed class MenuDeleteRequest : ApiRequest<MenuDeleteResponse>
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MenuGetRequest.cs
class MenuGetRequest (line 9) | public class MenuGetRequest : ApiRequest<MenuGetResponse>
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantCategoryGetPropertyRequest.cs
class MerchantCategoryGetpropertyRequest (line 10) | public class MerchantCategoryGetpropertyRequest : ApiRequest<MerchantCat...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantCategoryGetskuRequest.cs
class MerchantCategoryGetskuRequest (line 10) | public class MerchantCategoryGetskuRequest : ApiRequest<MerchantCategory...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantCategoryGetsubRequest.cs
class MerchantCategoryGetsubRequest (line 10) | public class MerchantCategoryGetsubRequest : ApiRequest<MerchantCategory...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantCommonUploadimgRequest.cs
class MerchantCommonUploadimgRequest (line 9) | public class MerchantCommonUploadimgRequest : ApiRequest<MerchantCommonU...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantCreateRequest.cs
class MerchantCreateRequest (line 10) | public class MerchantCreateRequest : ApiRequest<MerchantCreateResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantDelRequest.cs
class MerchantDelRequest (line 10) | public class MerchantDelRequest : ApiRequest<DefaultResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantExpressAddRequest.cs
class MerchantExpressAddRequest (line 10) | public class MerchantExpressAddRequest : ApiRequest<MerchantExpressAddRe...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantExpressDelRequest.cs
class MerchantExpressDelRequest (line 10) | public class MerchantExpressDelRequest : ApiRequest<DefaultResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantExpressGetallRequest.cs
class MerchantExpressGetallRequest (line 9) | public class MerchantExpressGetallRequest : ApiRequest<MerchantExpressGe...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantExpressGetbyidRequest.cs
class MerchantExpressGetbyidRequest (line 10) | public class MerchantExpressGetbyidRequest : ApiRequest<MerchantExpressG...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantExpressUpdateRequest.cs
class MerchantExpressUpdateRequest (line 10) | public class MerchantExpressUpdateRequest : ApiRequest<DefaultResponse>
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantGetRequest.cs
class MerchantGetRequest (line 10) | public class MerchantGetRequest : ApiRequest<MerchantGetResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantGetbystatus.cs
class MerchantGetbystatusRequest (line 10) | public class MerchantGetbystatusRequest : ApiRequest<MerchantGetbystatus...
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
method Validate (line 39) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantGroupAddRequest.cs
class MerchantGroupAddRequest (line 10) | public class MerchantGroupAddRequest : ApiRequest<MerchantGroupAddResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
method Validate (line 40) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantGroupDelRequest.cs
class MerchantGroupDelRequest (line 10) | public class MerchantGroupDelRequest : ApiRequest<DefaultResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantGroupGetallRequest.cs
class MerchantGroupGetallRequest (line 9) | public class MerchantGroupGetallRequest : ApiRequest<MerchantGroupGetall...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantGroupGetbyidRequest.cs
class MerchantGroupGetbyidRequest (line 10) | public class MerchantGroupGetbyidRequest : ApiRequest<MerchantGroupGetby...
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantGroupProductmodRequest.cs
class MerchantGroupProductmodRequest (line 10) | public class MerchantGroupProductmodRequest : ApiRequest<DefaultResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
method Validate (line 39) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantGroupPropertymodRequest.cs
class MerchantGroupPropertymodRequest (line 10) | public class MerchantGroupPropertymodRequest : ApiRequest<DefaultResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
method Validate (line 39) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantModproductstatusRequest.cs
class MerchantModproductstatusRequest (line 10) | public class MerchantModproductstatusRequest : ApiRequest<DefaultResponse>
method GetUrl (line 34) | internal override string GetUrl()
method GetPostContent (line 44) | public override string GetPostContent()
method Validate (line 49) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantOrderCloseRequest.cs
class MerchantOrderCloseRequest (line 10) | public class MerchantOrderCloseRequest : ApiRequest<DefaultResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantOrderGetbyfilterRequest.cs
class MerchantOrderGetbyfilterRequest (line 10) | public class MerchantOrderGetbyfilterRequest : ApiRequest<MerchantOrderG...
method GetUrl (line 49) | internal override string GetUrl()
method GetPostContent (line 59) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantOrderGetbyidRequest.cs
class MerchantOrderGetbyidRequest (line 10) | public class MerchantOrderGetbyidRequest : ApiRequest<MerchantOrderGetby...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantOrderSetdeliveryRequest.cs
class MerchantOrderSetdeliveryRequest (line 10) | public class MerchantOrderSetdeliveryRequest : ApiRequest<DefaultResponse>
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantShelfAddRequest.cs
class MerchantShelfAddRequest (line 10) | public class MerchantShelfAddRequest : ApiRequest<MerchantShelfAddResponse>
method MerchantShelfAddRequest (line 12) | public MerchantShelfAddRequest()
method AddModules (line 46) | public void AddModules(ShelfModuleOne one,
method AddModules (line 59) | public void AddModules(ShelfModuleFive five)
method GetUrl (line 80) | internal override string GetUrl()
method GetPostContent (line 90) | public override string GetPostContent()
method Validate (line 95) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantShelfDelRequest.cs
class MerchantShelfDelRequest (line 10) | public class MerchantShelfDelRequest : ApiRequest<DefaultResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantShelfGetallRequest.cs
class MerchantShelfGetallRequest (line 9) | public class MerchantShelfGetallRequest : ApiRequest<MerchantShelfGetall...
method GetUrl (line 21) | internal override string GetUrl()
method GetPostContent (line 31) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantShelfGetbyidRequest.cs
class MerchantShelfGetbyidRequest (line 10) | public class MerchantShelfGetbyidRequest : ApiRequest<MerchantShelfGetby...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantShelfMod.cs
class MerchantShelfMod (line 10) | public class MerchantShelfMod : ApiRequest<DefaultResponse>
method AddModules (line 44) | public void AddModules(ShelfModuleOne one,
method AddModules (line 57) | public void AddModules(ShelfModuleFive five)
method GetUrl (line 78) | internal override string GetUrl()
method GetPostContent (line 88) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantShelfUpdatestatusRequest.cs
class MerchantShelfUpdatestatusRequest (line 10) | public class MerchantShelfUpdatestatusRequest : ApiRequest<MerchantShelf...
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
method Validate (line 43) | internal override void Validate()
FILE: Business/Model/ApiRequests/MerchantStockAddRequest.cs
class MerchantStockAddRequest (line 10) | public class MerchantStockAddRequest : ApiRequest<DefaultResponse>
method GetUrl (line 34) | internal override string GetUrl()
method GetPostContent (line 44) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantStockReduceRequest.cs
class MerchantStockReduceRequest (line 10) | public class MerchantStockReduceRequest : ApiRequest<DefaultResponse>
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MerchantUpdateRequest.cs
class MerchantUpdateRequest (line 10) | public class MerchantUpdateRequest : ApiRequest<DefaultResponse>
method GetUrl (line 24) | internal override string GetUrl()
method GetPostContent (line 34) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MessageCustomSendImageRequest.cs
class MessageCustomSendImageRequest (line 9) | public class MessageCustomSendImageRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageCustomSendMusicRequest.cs
class MessageCustomSendMusicRequest (line 8) | public class MessageCustomSendMusicRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageCustomSendNewsRequest.cs
class MessageCustomSendNewsRequest (line 9) | public class MessageCustomSendNewsRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageCustomSendRequest.cs
class MessageCustomSendRequest (line 10) | public abstract class MessageCustomSendRequest : ApiRequest<MessageCusto...
method GetUrl (line 28) | internal override string GetUrl()
method GetPostContent (line 38) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MessageCustomSendTextRequest.cs
class MessageCustomSendTextRequest (line 9) | public class MessageCustomSendTextRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageCustomSendVideoRequest.cs
class MessageCustomSendVideoRequest (line 9) | public class MessageCustomSendVideoRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageCustomSendVoiceRequest.cs
class MessageCustomSendVoiceRequest (line 9) | public class MessageCustomSendVoiceRequest : MessageCustomSendRequest
FILE: Business/Model/ApiRequests/MessageMassDeleteRequest.cs
class MessageMassDeleteRequest (line 10) | public class MessageMassDeleteRequest : ApiRequest<MessageMassDeleteResp...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MessageMassSendAllRequest.cs
class SendFilter (line 10) | public class SendFilter
class SendMPNews (line 16) | public class SendMPNews
class MessageMassSendAllRequest (line 23) | public class MessageMassSendAllRequest : ApiRequest<MessageMassSendAllRe...
method GetUrl (line 44) | internal override string GetUrl()
method GetPostContent (line 54) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/MessageMassSendRequest.cs
class MessageMassSendRequest (line 10) | public class MessageMassSendRequest : ApiRequest<MessageMassSendResponse>
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/QrcodeCreateRequest.cs
type ActionName (line 11) | public enum ActionName
class ActionInfo (line 18) | public class ActionInfo
class Scene (line 23) | public class Scene
class QrcodeCreateRequest (line 29) | public class QrcodeCreateRequest : ApiRequest<QrcodeCreateResponse>
method GetUrl (line 51) | internal override string GetUrl()
method GetPostContent (line 61) | public override string GetPostContent()
method Validate (line 66) | internal override void Validate()
FILE: Business/Model/ApiRequests/ShorturlRequest.cs
type ConvertType (line 10) | public enum ConvertType
class ShorturlRequest (line 16) | public class ShorturlRequest : ApiRequest<ShorturlResponse>
method GetUrl (line 49) | internal override string GetUrl()
method GetPostContent (line 59) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/SnsOAuthAccessTokenRequest.cs
class SnsOAuthAccessTokenRequest (line 9) | public class SnsOAuthAccessTokenRequest : ApiRequest<SnsOAuthAccessToken...
method GetUrl (line 27) | internal override string GetUrl()
method GetPostContent (line 37) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/SnsOauthRefreshTokenRequest.cs
class SnsOauthRefreshTokenRequest (line 9) | public class SnsOauthRefreshTokenRequest : ApiRequest<SnsOAuthAccessToke...
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/SnsUserInfoRequest.cs
class SnsUserInfoRequest (line 9) | public class SnsUserInfoRequest : ApiRequest<SnsUserInfoResponse>
method GetUrl (line 29) | internal override string GetUrl()
method GetPostContent (line 39) | public override string GetPostContent()
method Validate (line 44) | internal override void Validate()
FILE: Business/Model/ApiRequests/TemplateApiaddtemplateRequest.cs
class TemplateApiaddtemplateRequest (line 13) | public class TemplateApiaddtemplateRequest : ApiRequest<TemplateApiaddte...
method GetUrl (line 31) | internal override string GetUrl()
method GetPostContent (line 41) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/TemplateApisetindustryRequest.cs
class TemplateApisetindustryRequest (line 13) | public class TemplateApisetindustryRequest : ApiRequest<DefaultResponse>
method GetUrl (line 54) | internal override string GetUrl()
method GetPostContent (line 64) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/TemplateSendRequest.cs
class TemplateSendRequest (line 13) | public class TemplateSendRequest : ApiRequest<TemplateSendResponse>
method GetUrl (line 51) | internal override string GetUrl()
method GetPostContent (line 61) | public override string GetPostContent()
method Validate (line 66) | internal override void Validate()
FILE: Business/Model/ApiRequests/UserGetRequest.cs
class UserGetRequest (line 10) | public class UserGetRequest : ApiRequest<UserGetResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/UserInfoRequest.cs
class UserInfoRequest (line 9) | public class UserInfoRequest : ApiRequest<UserInfoResponse>
method GetUrl (line 25) | internal override string GetUrl()
method GetPostContent (line 35) | public override string GetPostContent()
FILE: Business/Model/ApiRequests/UserInfoUpdateremarkRequest.cs
class UserInfoUpdateremarkRequest (line 15) | public class UserInfoUpdateremarkRequest : ApiRequest<DefaultResponse>
method GetUrl (line 39) | internal override string GetUrl()
method GetPostContent (line 49) | public override string GetPostContent()
FILE: Business/Model/ApiResponses/AccessTokenCodeResponse.cs
class AccessTokenCodeResponse (line 8) | public class AccessTokenCodeResponse : ApiResponse
FILE: Business/Model/ApiResponses/AccessTokenResponse.cs
class AccessTokenResponse (line 8) | public class AccessTokenResponse : ApiResponse
method ToString (line 14) | public override string ToString()
FILE: Business/Model/ApiResponses/ApiResponse.cs
class ApiResponse (line 9) | public abstract class ApiResponse
method ToString (line 27) | public override string ToString()
FILE: Business/Model/ApiResponses/CustomServiceGetRecordResponse.cs
class CustomServiceGetRecordResponse (line 9) | public class CustomServiceGetRecordResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceGetkflistResponse.cs
class CustomserviceGetkflistResponse (line 9) | public class CustomserviceGetkflistResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceGetonlinekflistResponse.cs
class CustomserviceGetonlinekflistResponse (line 9) | public class CustomserviceGetonlinekflistResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceKfsessionCloseResponse.cs
class CustomserviceKfsessionCloseResponse (line 8) | public class CustomserviceKfsessionCloseResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceKfsessionCreateResponse.cs
class CustomserviceKfsessionCreateResponse (line 8) | public class CustomserviceKfsessionCreateResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetsessionResponse.cs
class CustomserviceKfsessionGetsessionResponse (line 9) | public class CustomserviceKfsessionGetsessionResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetsessionlistResponse.cs
class CustomserviceKfsessionGetsessionlistResponse (line 9) | public class CustomserviceKfsessionGetsessionlistResponse : ApiResponse
FILE: Business/Model/ApiResponses/CustomserviceKfsessionGetwaitcaseResponse.cs
class CustomserviceKfsessionGetwaitcaseResponse (line 9) | public class CustomserviceKfsessionGetwaitcaseResponse : ApiResponse
FILE: Business/Model/ApiResponses/DatacubeGetArticlesResponse.cs
class DatacubeGetArticlesResponse (line 18) | public class DatacubeGetArticlesResponse : ApiResponse
FILE: Business/Model/ApiResponses/DatacubeGetInterfaceResponse.cs
class DatacubeGetInterfaceResponse (line 9) | public class DatacubeGetInterfaceResponse : ApiResponse
FILE: Business/Model/ApiResponses/DatacubeGetStreamMsgResponse.cs
class DatacubeGetStreamMsgResponse (line 9) | public class DatacubeGetStreamMsgResponse : ApiResponse
FILE: Business/Model/ApiResponses/DatacubeGetUserCumulateResponse.cs
class DatacubeGetUserCumulateResponse (line 9) | public class DatacubeGetUserCumulateResponse : ApiResponse
FILE: Business/Model/ApiResponses/DatacubeGetUserSummaryResponse.cs
class DatacubeGetUserSummaryResponse (line 9) | public class DatacubeGetUserSummaryResponse : ApiResponse
FILE: Business/Model/ApiResponses/DefaultResponse.cs
class DefaultResponse (line 8) | public sealed class DefaultResponse : ApiResponse
FILE: Business/Model/ApiResponses/GetCurrentAutoreplyInfoResponse.cs
class GetCurrentAutoreplyInfoResponse (line 9) | public class GetCurrentAutoreplyInfoResponse : ApiResponse
FILE: Business/Model/ApiResponses/GetCurrentSelfmenuInfoResponse.cs
class GetCurrentSelfmenuInfoResponse (line 9) | public class GetCurrentSelfmenuInfoResponse : ApiResponse
FILE: Business/Model/ApiResponses/GetcallbackipResponse.cs
class GetcallbackipResponse (line 9) | public class GetcallbackipResponse : ApiResponse
FILE: Business/Model/ApiResponses/GroupCreateResponse.cs
class GroupCreateResponse (line 8) | public class GroupCreateResponse : ApiResponse
method ToString (line 12) | public override string ToString()
FILE: Business/Model/ApiResponses/GroupsGetIdResponse.cs
class GroupsGetIdResponse (line 8) | public class GroupsGetIdResponse : ApiResponse
method ToString (line 12) | public override string ToString()
FILE: Business/Model/ApiResponses/GroupsMembersUpdateResponse.cs
class GroupsMembersUpdateResponse (line 8) | public class GroupsMembersUpdateResponse : ApiResponse
FILE: Business/Model/ApiResponses/GroupsQueryResponse.cs
class GroupsQueryResponse (line 8) | public class GroupsQueryResponse : ApiResponse
FILE: Business/Model/ApiResponses/GroupsUpdateResponse.cs
class GroupsUpdateResponse (line 8) | public class GroupsUpdateResponse : ApiResponse
method ToString (line 10) | public override string ToString()
FILE: Business/Model/ApiResponses/MaterialAddNewsResponse.cs
class MaterialAddNewsResponse (line 12) | public class MaterialAddNewsResponse : ApiResponse
FILE: Business/Model/ApiResponses/MediaGetResponse.cs
class MediaGetResponse (line 8) | public class MediaGetResponse : ApiResponse
FILE: Business/Model/ApiResponses/MediaUploadNewsResponse.cs
class MediaUploadNewsResponse (line 9) | public class MediaUploadNewsResponse : ApiResponse
FILE: Business/Model/ApiResponses/MediaUploadResponse.cs
class MediaUploadResponse (line 9) | public class MediaUploadResponse : ApiResponse
FILE: Business/Model/ApiResponses/MenuCreateResponse.cs
class MenuCreateResponse (line 8) | public class MenuCreateResponse : ApiResponse
FILE: Business/Model/ApiResponses/MenuDeleteResponse.cs
class MenuDeleteResponse (line 8) | public class MenuDeleteResponse : ApiResponse
FILE: Business/Model/ApiResponses/MenuGetResponse.cs
class MenuGetResponse (line 9) | public class MenuGetResponse : ApiResponse
class Menu (line 14) | public class Menu
FILE: Business/Model/ApiResponses/MerchantCategoryGetpropertyResponse.cs
class MerchantCategoryGetpropertyResponse (line 9) | public class MerchantCategoryGetpropertyResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantCategoryGetskuResponse.cs
class MerchantCategoryGetskuResponse (line 9) | public class MerchantCategoryGetskuResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantCategoryGetsubResponse.cs
class MerchantCategoryGetsubResponse (line 9) | public class MerchantCategoryGetsubResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantCommonUploadimgResponse.cs
class MerchantCommonUploadimgResponse (line 9) | public class MerchantCommonUploadimgResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantCreateResponse.cs
class MerchantCreateResponse (line 9) | public class MerchantCreateResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantExpressAddResponse.cs
class MerchantExpressAddResponse (line 12) | public class MerchantExpressAddResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantExpressGetallResponse.cs
class MerchantExpressGetallResponse (line 9) | public class MerchantExpressGetallResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantExpressGetbyidResponse.cs
class MerchantExpressGetbyidResponse (line 9) | public class MerchantExpressGetbyidResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantGetResponse.cs
class MerchantGetResponse (line 9) | public class MerchantGetResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantGetbystatusResponse.cs
class MerchantGetbystatusResponse (line 9) | public class MerchantGetbystatusResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantGroupAddResponse.cs
class MerchantGroupAddResponse (line 9) | public class MerchantGroupAddResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantGroupGetallResponse.cs
class MerchantGroupGetallResponse (line 9) | public class MerchantGroupGetallResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantGroupGetbyidResponse.cs
class MerchantGroupGetbyidResponse (line 9) | public class MerchantGroupGetbyidResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantOrderGetbyfilterResponse.cs
class MerchantOrderGetbyfilterResponse (line 9) | public class MerchantOrderGetbyfilterResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantOrderGetbyidResponse.cs
class MerchantOrderGetbyidResponse (line 9) | public class MerchantOrderGetbyidResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantShelfAddResponse.cs
class MerchantShelfAddResponse (line 9) | public class MerchantShelfAddResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantShelfGetallResponse.cs
class MerchantShelfGetallResponse (line 9) | public class MerchantShelfGetallResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantShelfGetbyidResponse.cs
class MerchantShelfGetbyidResponse (line 9) | public class MerchantShelfGetbyidResponse : ApiResponse
FILE: Business/Model/ApiResponses/MerchantShelfUpdatestatusResponse.cs
class MerchantShelfUpdatestatusResponse (line 9) | public class MerchantShelfUpdatestatusResponse : ApiResponse
FILE: Business/Model/ApiResponses/MessageCustomSendResponse.cs
class MessageCustomSendResponse (line 8) | public class MessageCustomSendResponse : ApiResponse
FILE: Business/Model/ApiResponses/MessageMassDeleteResponse.cs
class MessageMassDeleteResponse (line 8) | public class MessageMassDeleteResponse : ApiResponse
FILE: Business/Model/ApiResponses/MessageMassSendAllResponse.cs
class MessageMassSendAllResponse (line 9) | public class MessageMassSendAllResponse : ApiResponse
FILE: Business/Model/ApiResponses/MessageMassSendResponse.cs
class MessageMassSendResponse (line 9) | public class MessageMassSendResponse : ApiResponse
FILE: Business/Model/ApiResponses/QrcodeCreateResponse.cs
class QrcodeCreateResponse (line 9) | public class QrcodeCreateResponse : ApiResponse
FILE: Business/Model/ApiResponses/ShorturlResponse.cs
class ShorturlResponse (line 9) | public class ShorturlResponse : ApiResponse
FILE: Business/Model/ApiResponses/SnsOAuthAccessTokenResponse.cs
class SnsOAuthAccessTokenResponse (line 9) | public class SnsOAuthAccessTokenResponse : ApiResponse
FILE: Business/Model/ApiResponses/SnsUserInfoResponse.cs
class SnsUserInfoResponse (line 9) | public class SnsUserInfoResponse : ApiResponse
FILE: Business/Model/ApiResponses/TemplateApiaddtemplateResponse.cs
class TemplateApiaddtemplateResponse (line 9) | public class TemplateApiaddtemplateResponse : ApiResponse
FILE: Business/Model/ApiResponses/TemplateSendResponse.cs
class TemplateSendResponse (line 9) | public class TemplateSendResponse : ApiResponse
FILE: Business/Model/ApiResponses/UserGetResponse.cs
class UserGetResponse (line 9) | public class UserGetResponse : ApiResponse
class UserGetData (line 21) | public class UserGetData
FILE: Business/Model/ApiResponses/UserInfoResponse.cs
class UserInfoResponse (line 8) | public class UserInfoResponse : ApiResponse
FILE: Business/Model/AppIdentication.cs
class AppIdentication (line 8) | public class AppIdentication
method AppIdentication (line 10) | public AppIdentication(string appId, string appSecret)
FILE: Business/Model/ClickButton.cs
type ClickButtonType (line 10) | public enum ClickButtonType
class ClickButton (line 23) | public class ClickButton
FILE: Business/Model/Exceptions/WXApiException.cs
class WXApiException (line 8) | public class WXApiException : Exception
method WXApiException (line 10) | public WXApiException(int code, string content)
FILE: Business/Model/Group.cs
class Group (line 9) | public class Group
FILE: Business/Model/MerchantInfoModel.cs
class ProductInfo (line 10) | public sealed class ProductInfo
class Product (line 46) | public class Product
class Delivery (line 103) | public sealed class Delivery
class Express (line 115) | public sealed class Express
class Attrext (line 124) | public sealed class Attrext
class Location (line 209) | public sealed class Location
class Sku (line 224) | public sealed class Sku
class ProductDetail (line 263) | public sealed class ProductDetail
class SkuInfo (line 272) | public sealed class SkuInfo
class ProductProperty (line 281) | public sealed class ProductProperty
class Cate (line 290) | public class Cate
class SkuTable (line 305) | public sealed class SkuTable
class SkuValue (line 317) | public sealed class SkuValue : Cate
class Property (line 322) | public sealed class Property
class PropertyValue (line 334) | public sealed class PropertyValue : Cate
class DeliveryTemplate (line 339) | public sealed class DeliveryTemplate
class TopFee (line 365) | public class TopFee
class CustomFee (line 385) | public class CustomFee : NormalFee
class NormalFee (line 403) | public class NormalFee
class MerchantGroupDetail (line 427) | public class MerchantGroupDetail
class ShelfModule (line 448) | [JsonConverter(typeof(ShelfModuleConverter))]
class ShelfModuleFactory (line 455) | internal class ShelfModuleFactory
method BuildModule (line 466) | internal ShelfModule BuildModule()
class ShelfModuleOne (line 499) | public class ShelfModuleOne : ShelfModule
method ShelfModuleOne (line 501) | public ShelfModuleOne() { }
method ShelfModuleOne (line 502) | public ShelfModuleOne(long groupId, int count)
class ShelfModuleTwo (line 524) | public class ShelfModuleTwo : ShelfModule
method ShelfModuleTwo (line 526) | public ShelfModuleTwo() { }
method ShelfModuleTwo (line 527) | public ShelfModuleTwo(long[] groupIds)
class ShelfModuleThree (line 546) | public class ShelfModuleThree : ShelfModule
method ShelfModuleThree (line 549) | public ShelfModuleThree() { }
method ShelfModuleThree (line 550) | public ShelfModuleThree(long groupId, string img)
class ShelfModuleFour (line 568) | public class ShelfModuleFour : ShelfModule
method ShelfModuleFour (line 570) | public ShelfModuleFour() { }
method ShelfModuleFour (line 571) | public ShelfModuleFour(IEnumerable<ShelfGroupInfo> groupInfos)
class ShelfModuleFive (line 599) | public class ShelfModuleFive : ShelfModule
method ShelfModuleFive (line 601) | public ShelfModuleFive() { }
method ShelfModuleFive (line 602) | public ShelfModuleFive(long[] groupId, string imgbackupground)
class ShelfGroupInfos (line 624) | public class ShelfGroupInfos
method ShelfGroupInfos (line 626) | public ShelfGroupInfos(int size)
class ShelfGroupInfo (line 639) | public class ShelfGroupInfo
method ShelfGroupInfo (line 641) | [JsonConstructor]
class GroupFilter (line 665) | internal class GroupFilter
method GroupFilter (line 667) | [JsonConstructor]
method GroupFilter (line 669) | internal GroupFilter(int count)
class ShelfModulesInfo (line 681) | public class ShelfModulesInfo
method ShelfModulesInfo (line 683) | public ShelfModulesInfo()
method ShelfModulesInfo (line 688) | public ShelfModulesInfo(IEnumerable<ShelfModule> modules)
class ShelfInfo (line 697) | public class ShelfInfo
FILE: Business/Model/MiddleMessage.cs
class MiddleMessage (line 9) | public sealed class MiddleMessage
method MiddleMessage (line 11) | public MiddleMessage(XElement element)
method GetRequestMessageByElement (line 20) | private RequestMessage GetRequestMessageByElement(XElement element)
method GetEventRequestMessage (line 44) | private RequestMessage GetEventRequestMessage(XElement element)
method GetSubscribeRequestMessageForQR (line 66) | private RequestMessage GetSubscribeRequestMessageForQR(XElement element)
FILE: Business/Model/OrderInfoModel.cs
class OrderInfo (line 9) | public class OrderInfo
type OrderStatus (line 78) | public enum OrderStatus
class DeliveryCompany (line 87) | public class DeliveryCompany
FILE: Business/Model/PublicMessage.cs
class TextMessage (line 11) | public class TextMessage
class ImageMessage (line 17) | public class ImageMessage
class MusicMessage (line 23) | public class MusicMessage
class VideoMessage (line 49) | public class VideoMessage
class VoiceMessage (line 65) | public class VoiceMessage
class NewsMessage (line 71) | public class NewsMessage
class NewsArticleMessage (line 77) | public class NewsArticleMessage
class ArticleMessage (line 92) | public class ArticleMessage
class CustomServiceRecord (line 181) | public class CustomServiceRecord
class AutoReplyInfo (line 194) | public class AutoReplyInfo
class KeywordReplyInfo (line 212) | public class KeywordReplyInfo
class NewsInfo (line 227) | public class NewsInfo
class KeywordReplyNews (line 233) | public class KeywordReplyNews
class KeywordRule (line 284) | public class KeywordRule
class KeywordAutoreplyInfo (line 302) | public class KeywordAutoreplyInfo
class SelfMenuInfo (line 308) | public class SelfMenuInfo
class ClickMenuInfo (line 314) | public class ClickMenuInfo
class SubButton (line 338) | public class SubButton
class UserDatacube (line 347) | public class UserDatacube
class DatacubeArticle (line 384) | public class DatacubeArticle
class DatacubeMsg (line 478) | public class DatacubeMsg
class DatacubeInterface (line 530) | public class DatacubeInterface
class MaterialNews (line 569) | public class MaterialNews
class KfSession (line 615) | public class KfSession
class WaitCase (line 630) | public class WaitCase
FILE: Business/Model/Request/RequestClickEventMessage.cs
class RequestClickEventMessage (line 9) | public class RequestClickEventMessage : RequestEventMessage
method RequestClickEventMessage (line 11) | public RequestClickEventMessage(XElement xml)
FILE: Business/Model/Request/RequestEventMessage.cs
class RequestEventMessage (line 9) | public class RequestEventMessage : RequestMessage
method RequestEventMessage (line 11) | public RequestEventMessage(XElement xml)
FILE: Business/Model/Request/RequestImageMessage.cs
class RequestImageMessage (line 9) | public class RequestImageMessage : RequestMessage
method RequestImageMessage (line 11) | public RequestImageMessage(XElement xml)
FILE: Business/Model/Request/RequestLinkMessage.cs
class RequestLinkMessage (line 9) | public class RequestLinkMessage : RequestMessage
method RequestLinkMessage (line 11) | public RequestLinkMessage(XElement xml)
FILE: Business/Model/Request/RequestLocationEventMessage.cs
class RequestLocationEventMessage (line 9) | public class RequestLocationEventMessage : RequestEventMessage
method RequestLocationEventMessage (line 11) | public RequestLocationEventMessage(XElement xml)
FILE: Business/Model/Request/RequestLocationMessage.cs
class RequestLocationMessage (line 9) | public class RequestLocationMessage : RequestMessage
method RequestLocationMessage (line 11) | public RequestLocationMessage(XElement xml)
FILE: Business/Model/Request/RequestMassSendEventMessage.cs
class RequestMassSendEventMessage (line 9) | public class RequestMassSendEventMessage : RequestEventMessage
method RequestMassSendEventMessage (line 11) | public RequestMassSendEventMessage(XElement xml)
FILE: Business/Model/Request/RequestMessage.cs
class RequestMessage (line 11) | [Serializable]
method RequestMessage (line 14) | public RequestMessage() { }
method RequestMessage (line 16) | public RequestMessage(XElement xml)
method Deserializ (line 24) | public static T Deserializ<T>(Stream stream)
FILE: Business/Model/Request/RequestOrderEventMessage.cs
class RequestOrderEventMessage (line 9) | public class RequestOrderEventMessage : RequestEventMessage
method RequestOrderEventMessage (line 11) | public RequestOrderEventMessage(XElement xml)
FILE: Business/Model/Request/RequestQREventMessage.cs
class RequestQREventMessage (line 9) | public class RequestQREventMessage : RequestEventMessage
method RequestQREventMessage (line 11) | public RequestQREventMessage(XElement xml)
FILE: Business/Model/Request/RequestShortVideoMessage.cs
class RequestShortVideoMessage (line 14) | public class RequestShortVideoMessage : RequestMessage
method RequestShortVideoMessage (line 16) | public RequestShortVideoMessage(XElement xml)
FILE: Business/Model/Request/RequestTemplateEventMessage.cs
class RequestTemplateEventMessage (line 9) | public class RequestTemplateEventMessage : RequestEventMessage
method RequestTemplateEventMessage (line 11) | public RequestTemplateEventMessage(XElement xml)
FILE: Business/Model/Request/RequestTextMessage.cs
class RequestTextMessage (line 11) | [Serializable]
method RequestTextMessage (line 16) | public RequestTextMessage() { }
method RequestTextMessage (line 18) | public RequestTextMessage(XElement xml)
FILE: Business/Model/Request/RequestVideoMessage.cs
class RequestVideoMessage (line 9) | public class RequestVideoMessage : RequestMessage
method RequestVideoMessage (line 11) | public RequestVideoMessage(XElement xml)
FILE: Business/Model/Request/RequestViewEventMessage.cs
class RequestViewEventMessage (line 9) | public class RequestViewEventMessage : RequestEventMessage
method RequestViewEventMessage (line 11) | public RequestViewEventMessage(XElement xml)
FILE: Business/Model/Request/RequestVoiceMessage.cs
class RequestVoiceMessage (line 9) | public class RequestVoiceMessage : RequestMessage
method RequestVoiceMessage (line 11) | public RequestVoiceMessage(XElement xml):base(xml)
FILE: Business/Model/Response/ResponseImageMessage.cs
class ResponseImageMessage (line 9) | [XmlRoot("xml")]
method ResponseImageMessage (line 12) | public ResponseImageMessage() { }
method ResponseImageMessage (line 13) | public ResponseImageMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseMessage.cs
class ResponseMessage (line 10) | [Serializable]
method ResponseMessage (line 14) | public ResponseMessage() { }
method ResponseMessage (line 16) | public ResponseMessage(RequestMessage request)
method Serializable (line 30) | public String Serializable()
FILE: Business/Model/Response/ResponseMusicMessage.cs
class ResponseMusicMessage (line 9) | [XmlRoot("xml")]
method ResponseMusicMessage (line 12) | public ResponseMusicMessage() { }
method ResponseMusicMessage (line 13) | public ResponseMusicMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseNewsMessage.cs
class ResponseNewsMessage (line 9) | [XmlRoot("xml")]
method ResponseNewsMessage (line 12) | public ResponseNewsMessage() { }
method ResponseNewsMessage (line 13) | public ResponseNewsMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseTextMessage.cs
class ResponseTextMessage (line 9) | [XmlRoot("xml")]
method ResponseTextMessage (line 12) | public ResponseTextMessage() { }
method ResponseTextMessage (line 13) | public ResponseTextMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseTransferCustomServiceMessage.cs
class ResponseTransferCustomServiceMessage (line 8) | public class ResponseTransferCustomServiceMessage : ResponseMessage
method ResponseTransferCustomServiceMessage (line 10) | public ResponseTransferCustomServiceMessage() { }
method ResponseTransferCustomServiceMessage (line 11) | public ResponseTransferCustomServiceMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseVideoMessage.cs
class ResponseVideoMessage (line 9) | [XmlRoot("xml")]
method ResponseVideoMessage (line 12) | public ResponseVideoMessage() { }
method ResponseVideoMessage (line 13) | public ResponseVideoMessage(RequestMessage request)
FILE: Business/Model/Response/ResponseVoiceMessage.cs
class ResponseVoiceMessage (line 9) | [XmlRoot("xml")]
method ResponseVoiceMessage (line 12) | public ResponseVoiceMessage() { }
method ResponseVoiceMessage (line 13) | public ResponseVoiceMessage(RequestMessage request)
FILE: Business/Model/TemplateDataProperty.cs
class TemplateDataProperty (line 9) | public class TemplateDataProperty
method TemplateDataProperty (line 11) | public TemplateDataProperty() { }
method TemplateDataProperty (line 13) | public TemplateDataProperty(string value, string color)
FILE: Business/Model/WXEnum.cs
type MsgType (line 8) | public enum MsgType
type Event (line 23) | public enum Event
type MediaType (line 36) | public enum MediaType
type OAuthScope (line 44) | public enum OAuthScope
type Language (line 50) | public enum Language
type TemplateIndustry (line 60) | public enum TemplateIndustry
FILE: Business/Model/WXEnum.cs.BASE.cs
type MsgType (line 8) | public enum MsgType
type Event (line 21) | public enum Event
type MediaType (line 31) | public enum MediaType
type OAuthScope (line 39) | public enum OAuthScope
type Language (line 45) | public enum Language
FILE: Business/Model/WXEnum.cs.LOCAL.cs
type MsgType (line 8) | public enum MsgType
type Event (line 21) | public enum Event
type MediaType (line 32) | public enum MediaType
type OAuthScope (line 40) | public enum OAuthScope
type Language (line 46) | public enum Language
FILE: Business/Model/WXEnum.cs.REMOTE.cs
type MsgType (line 8) | public enum MsgType
type Event (line 21) | public enum Event
type MediaType (line 32) | public enum MediaType
type OAuthScope (line 40) | public enum OAuthScope
type Language (line 46) | public enum Language
FILE: Business/Model/WXJsonResult.cs
class WXJsonResult (line 8) | public class WXJsonResult
FILE: Business/Model/WXMessage.cs
class WXMessage (line 11) | [Serializable]
FILE: Business/NotHandlerMessage.cs
class NotHandlerMessage (line 10) | public class NotHandlerMessage : IMessageHandler
method HandlerRequestMessage (line 12) | public ResponseMessage HandlerRequestMessage(MiddleMessage message)
FILE: Business/OAuth/OAuthHelper.cs
class OAuthHelper (line 9) | public class OAuthHelper
method OAuthHelper (line 13) | public OAuthHelper(string appId)
method BuildOAuthUrl (line 20) | public string BuildOAuthUrl(string redirectUrl, OAuthScope scope, stri...
FILE: Business/Pay/IPayApiClient.cs
type IPayApiClient (line 10) | public interface IPayApiClient
method Execute (line 12) | T Execute<T>(PayRequest<T> request) where T : PayResponse, new();
FILE: Business/Pay/PayApiClient.cs
class PayApiClient (line 14) | public class PayApiClient : IPayApiClient
method Execute (line 18) | public T Execute<T>(PayRequest<T> request) where T : PayResponse, new()
method Error (line 45) | public void Error(string content)
FILE: Business/Pay/Request/PayCloseorderRequest.cs
class PayCloseorderRequest (line 10) | [XmlRoot("xml")]
FILE: Business/Pay/Request/PayDownloadbillRequest.cs
class PayDownloadbillRequest (line 18) | public class PayDownloadbillRequest : PayRequest<PayDownloadResponse>
FILE: Business/Pay/Request/PayOrderqueryRequest.cs
class PayOrderqueryRequest (line 10) | [XmlRoot("xml")]
FILE: Business/Pay/Request/PayRefundQueryRequest.cs
class PayRefundQueryRequest (line 13) | [XmlRoot(ElementName = "xml")]
FILE: Business/Pay/Request/PayRefundRequest.cs
class PayRefundRequest (line 10) | [XmlRoot("xml")]
FILE: Business/Pay/Request/PayRequest.cs
class PayRequest (line 13) | [XmlRoot("xml")]
method CreateSign (line 80) | private string CreateSign()
method PushKeyValue (line 94) | protected void PushKeyValue(string key, string value)
method Serializable (line 116) | public String Serializable()
FILE: Business/Pay/Request/PayUnifiedOrderRequest.cs
class PayUnifiedOrderRequest (line 15) | [XmlRoot(ElementName = "xml", DataType = "string")]
FILE: Business/Pay/Response/PayCloseorderResponse.cs
class PayCloseorderResponse (line 9) | [XmlRoot("xml")]
FILE: Business/Pay/Response/PayDownloadResponse.cs
class PayDownloadResponse (line 8) | public class PayDownloadResponse : PayResponse
FILE: Business/Pay/Response/PayOrderqueryResponse.cs
class PayOrderqueryResponse (line 9) | [XmlRoot("xml")]
FILE: Business/Pay/Response/PayRefundQueryResponse.cs
class PayRefundQueryResponse (line 9) | [XmlRoot("xml")]
FILE: Business/Pay/Response/PayRefundResponse.cs
class PayRefundResponse (line 9) | [XmlRoot("xml")]
FILE: Business/Pay/Response/PayResponse.cs
class PayResponse (line 9) | [XmlRoot("xml")]
FILE: Business/Pay/Response/PayUnifiedOrderResponse.cs
class PayUnifiedOrderResponse (line 9) | [XmlRoot("xml")]
FILE: CustomClickMenu/App_Code/DataGridRow.cs
class DataGridRow (line 8) | public class DataGridRow
FILE: CustomClickMenu/Form1.Designer.cs
class Form1 (line 3) | partial class Form1
method Dispose (line 14) | protected override void Dispose(bool disposing)
method InitializeComponent (line 29) | private void InitializeComponent()
FILE: CustomClickMenu/Form1.cs
class Form1 (line 26) | public partial class Form1 : Form
method Form1 (line 34) | public Form1()
method LoadAppId (line 42) | private void LoadAppId()
method ReadMenuXml (line 58) | private void ReadMenuXml()
method ReadXmlToList (line 67) | private void ReadXmlToList(string s_menufilepath)
method button1_Click (line 97) | private void button1_Click(object sender, EventArgs e)
method RefreshGrid (line 108) | private void RefreshGrid()
method button2_Click (line 122) | private void button2_Click(object sender, EventArgs e)
method ExportToXml (line 128) | private void ExportToXml()
method ToDataTable (line 139) | public static DataTable ToDataTable(IList list)
method Form1_FormClosed (line 165) | private void Form1_FormClosed(object sender, FormClosedEventArgs e)
method button4_Click (line 170) | private void button4_Click(object sender, EventArgs e)
method button3_Click (line 184) | private void button3_Click(object sender, EventArgs e)
method GetMaxId (line 206) | private int GetMaxId()
method button5_Click (line 211) | private void button5_Click(object sender, EventArgs e)
method BuildButton (line 246) | private IEnumerable<ClickButton> BuildButton()
method button6_Click (line 281) | private void button6_Click(object sender, EventArgs e)
method textBox1_Click (line 295) | private void textBox1_Click(object sender, EventArgs e)
method button7_Click (line 301) | private void button7_Click(object sender, EventArgs e)
method GetMediaType (line 325) | private MediaType GetMediaType()
FILE: CustomClickMenu/MenuForm.Designer.cs
class MenuForm (line 3) | partial class MenuForm
method Dispose (line 14) | protected override void Dispose(bool disposing)
method InitializeComponent (line 29) | private void InitializeComponent()
FILE: CustomClickMenu/MenuForm.cs
class MenuForm (line 13) | public partial class MenuForm : Form
method MenuForm (line 15) | public MenuForm(IEnumerable<DataGridRow> parentRows, DataGridRow row) ...
method MenuForm (line 31) | public MenuForm(IEnumerable<DataGridRow> parentRows)
method BindParentData (line 39) | private void BindParentData()
method MenuForm (line 53) | private MenuForm()
method button2_Click (line 58) | private void button2_Click(object sender, EventArgs e)
method button1_Click (line 68) | private void button1_Click(object sender, EventArgs e)
method Verfiry (line 92) | private bool Verfiry()
method ShowMessage (line 121) | private void ShowMessage(string message)
method radioButton1_CheckedChanged (line 127) | private void radioButton1_CheckedChanged(object sender, EventArgs e)
method CheckBoxCheckChanged (line 132) | private void CheckBoxCheckChanged()
method radioButton2_CheckedChanged (line 152) | private void radioButton2_CheckedChanged(object sender, EventArgs e)
FILE: CustomClickMenu/Program.cs
class Program (line 8) | static class Program
method Main (line 13) | [STAThread]
FILE: CustomClickMenu/Properties/Resources.Designer.cs
class Resources (line 22) | [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resource...
method Resources (line 31) | [global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Mic...
FILE: CustomClickMenu/Properties/Settings.Designer.cs
class Settings (line 14) | [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
FILE: WebClasses/CnBlogsFeed.cs
class CnBlogsFeed (line 14) | public class CnBlogsFeed
method CnBlogsFeed (line 35) | public CnBlogsFeed(int topNum)
method GetTopCnblogsFeed (line 40) | public List<ArticleMessage> GetTopCnblogsFeed()
method GetTopCnblogsFeed (line 57) | private void GetTopCnblogsFeed(int m_topNum)
method GetRemoteUri (line 112) | private string GetRemoteUri(string uri, Encoding encoding)
FILE: WebClasses/Command.cs
class Command (line 9) | public class Command
FILE: WebClasses/Handlers/CnblogsArticleNewsMessageHandler.cs
class CnblogsArticleNewsMessageHandler (line 11) | public class CnblogsArticleNewsMessageHandler : IMessageHandler
method HandlerRequestMessage (line 13) | public ResponseMessage HandlerRequestMessage(MiddleMessage msg)
FILE: WebClasses/Handlers/CnblogsTextMessageHandler.cs
class CnblogsTextMessageHandler (line 11) | public class CnblogsTextMessageHandler : IMessageHandler
method HandlerRequestMessage (line 15) | public ResponseMessage HandlerRequestMessage(MiddleMessage msg)
FILE: WebClasses/Handlers/DefaultMessageHandler.cs
class DefaultMessageHandler (line 11) | public class DefaultMessageHandler : IMessageHandler
method HandlerRequestMessage (line 15) | public ResponseMessage HandlerRequestMessage(MiddleMessage msg)
FILE: WebClasses/Handlers/SubScribeEventMessageHandler.cs
class SubScribeEventMessageHandler (line 11) | public class SubScribeEventMessageHandler : TextMessageHandler
method SubScribeEventMessageHandler (line 15) | public SubScribeEventMessageHandler()
FILE: WebClasses/Handlers/TextMessageHandler.cs
class TextMessageHandler (line 11) | public class TextMessageHandler : IMessageHandler
method TextMessageHandler (line 15) | public TextMessageHandler(string msg)
method HandlerRequestMessage (line 20) | public ResponseMessage HandlerRequestMessage(MiddleMessage msg)
FILE: WebClasses/Handlers/UnSubScribeEventMessageHandler.cs
class UnSubScribeEventMessageHandler (line 11) | public class UnSubScribeEventMessageHandler : TextMessageHandler
method UnSubScribeEventMessageHandler (line 15) | public UnSubScribeEventMessageHandler()
FILE: WebClasses/Handlers/VoiceMessageHandler.cs
class VoiceMessageHandler (line 10) | public class VoiceMessageHandler : IMessageHandler
method HandlerRequestMessage (line 12) | public ResponseMessage HandlerRequestMessage(MiddleMessage message)
FILE: WebClasses/MyLog.cs
class MyLog (line 9) | public class MyLog
method Log (line 14) | public static void Log(string content)
FILE: WebClasses/Roles/EventMessageRole.cs
class EventMessageRole (line 11) | public class EventMessageRole : IMessageRole
method MessageRole (line 13) | public IMessageHandler MessageRole(MiddleMessage msg)
FILE: WebClasses/Roles/MsgTypeMessageRole.cs
class MsgTypeMessageRole (line 13) | public class MsgTypeMessageRole : IMessageRole
method MessageRole (line 15) | public IMessageHandler MessageRole(MiddleMessage msg)
FILE: WebClasses/Roles/TextMessageRole.cs
class TextMessageRole (line 10) | public class TextMessageRole : IMessageRole
method MessageRole (line 12) | public IMessageHandler MessageRole(MiddleMessage msg)
FILE: WebClasses/Roles/VoiceMessageRole.cs
class VoiceMessageRole (line 11) | public class VoiceMessageRole : IMessageRole
method MessageRole (line 13) | public IMessageHandler MessageRole(MiddleMessage message)
FILE: WebClasses/Roles/WebMessageRole.cs
class WebMessageRole (line 11) | public class WebMessageRole : IMessageRole
method MessageRole (line 13) | public IMessageHandler MessageRole(MiddleMessage msg)
FILE: WebDemo/OAuthUserInfoDemo.aspx.cs
class OAuthUserInfoDemo (line 15) | public partial class OAuthUserInfoDemo : System.Web.UI.Page
method Page_Load (line 22) | protected void Page_Load(object sender, EventArgs e)
method Button1_Click (line 33) | protected void Button1_Click(object sender, EventArgs e)
method Button2_Click (line 54) | protected void Button2_Click(object sender, EventArgs e)
method Button3_Click (line 74) | protected void Button3_Click(object sender, EventArgs e)
FILE: WebDemo/OAuthUserInfoDemo.aspx.designer.cs
class OAuthUserInfoDemo (line 13) | public partial class OAuthUserInfoDemo {
FILE: WebDemo/Oauth2Demo.aspx.cs
class Oauth2Demo (line 14) | public partial class Oauth2Demo : System.Web.UI.Page
method Page_Load (line 16) | protected void Page_Load(object sender, EventArgs e)
method Button1_Click (line 21) | protected void Button1_Click(object sender, EventArgs e)
FILE: WebDemo/Oauth2Demo.aspx.designer.cs
class Oauth2Demo (line 13) | public partial class Oauth2Demo {
FILE: WebDemo/QrcodePage.aspx.cs
class QrcodePage (line 18) | public partial class QrcodePage : System.Web.UI.Page
method Page_Load (line 20) | protected void Page_Load(object sender, EventArgs e)
FILE: WebDemo/QrcodePage.aspx.designer.cs
class QrcodePage (line 13) | public partial class QrcodePage {
FILE: WebDemo/WX.aspx.cs
class WX (line 14) | public partial class WX : System.Web.UI.Page
method Page_Load (line 16) | protected void Page_Load(object sender, EventArgs e)
FILE: WebDemo/WX.aspx.designer.cs
class WX (line 13) | public partial class WX {
FILE: test/FrameworkCoreTest/AccessTokenTest.cs
class AccessTokenTest (line 14) | public class AccessTokenTest
method GetAccessTokenCore (line 16) | [Fact]
method MatchMessageTest (line 27) | [Fact]
method ErrorMessageTest (line 39) | [Fact]
FILE: test/FrameworkCoreTest/Api/CustomeServiceGetRecordTest.cs
class CustomeServiceGetRecordTest (line 12) | public class CustomeServiceGetRecordTest : MockPostApiBaseTest<CustomSer...
method MockCustomServiceGetRecordTest (line 14) | [Fact]
method MockCustomServiceGetRecordErrorTest (line 27) | [Fact]
method InitRequestObject (line 36) | protected override CustomServiceGetRecordRequest InitRequestObject()
method GetReturnResult (line 49) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/CustomserviceKfsessionCloseTest.cs
class CustomserviceKfsessionCloseTest (line 12) | public class CustomserviceKfsessionCloseTest : MockPostApiBaseTest<Custo...
method InitRequestObject (line 14) | protected override CustomserviceKfsessionCloseRequest InitRequestObject()
method GetReturnResult (line 25) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 34) | public override CustomserviceKfsessionCloseResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/CustomserviceKfsessionCreateTest.cs
class CustomserviceKfsessionCreateTest (line 12) | public class CustomserviceKfsessionCreateTest : MockPostApiBaseTest<Cust...
method InitRequestObject (line 14) | protected override CustomserviceKfsessionCreateRequest InitRequestObje...
method GetReturnResult (line 25) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 35) | public override CustomserviceKfsessionCreateResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/CustomserviceKfsessionGetsessionTest.cs
class CustomserviceKfsessionGetsessionTest (line 12) | public class CustomserviceKfsessionGetsessionTest : MockPostApiBaseTest<...
method InitRequestObject (line 14) | protected override CustomserviceKfsessionGetsessionRequest InitRequest...
method GetReturnResult (line 23) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 34) | public override CustomserviceKfsessionGetsessionResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/DAtacubeGetarticletotalTest.cs
class DatacubeGetarticletotalTest (line 12) | public class DatacubeGetarticletotalTest : MockPostApiBaseTest<DatacubeG...
method InitRequestObject (line 14) | protected override DatacubeGetarticletotalRequest InitRequestObject()
method GetResponse (line 24) | public override DatacubeGetArticlesResponse GetResponse()
method GetReturnResult (line 29) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/DatacubeGetInterfaceTest.cs
class DatacubeGetInterfaceTest (line 12) | public class DatacubeGetInterfaceTest : MockPostApiBaseTest<DatacubeGetI...
method InitRequestObject (line 14) | protected override DatacubeGetInterfaceSummaryHourRequest InitRequestO...
method GetReturnResult (line 24) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 42) | public override DatacubeGetInterfaceResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/DatacubeGetUpStreamMsgTest.cs
class DatacubeGetUpStreamMsgTest (line 12) | public class DatacubeGetUpStreamMsgTest : MockPostApiBaseTest<DatacubeGe...
method InitRequestObject (line 14) | protected override DatacubeGetUpStreamMsgRequest InitRequestObject()
method GetReturnResult (line 24) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 40) | public override DatacubeGetStreamMsgResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/DatacubeGetUserCumulateTest.cs
class DatacubeGetUserCumulateTest (line 12) | public class DatacubeGetUserCumulateTest : MockPostApiBaseTest<DatacubeG...
method InitRequestObject (line 14) | protected override DatacubeGetUserCumulateRequest InitRequestObject()
method GetReturnResult (line 24) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 38) | public override DatacubeGetUserCumulateResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/DatacubeGetUserSummaryTest.cs
class DatacubeGetUserSummaryTest (line 12) | public class DatacubeGetUserSummaryTest : MockPostApiBaseTest<DatacubeGe...
method InitRequestObject (line 14) | protected override DatacubeGetUserSummaryRequest InitRequestObject()
method GetReturnResult (line 24) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 38) | public override DatacubeGetUserSummaryResponse GetResponse()
FILE: test/FrameworkCoreTest/Api/DatacubeGetarticlesummaryTest.cs
class DatacubeGetarticlesummaryTest (line 12) | public class DatacubeGetarticlesummaryTest : MockPostApiBaseTest<Datacub...
method InitRequestObject (line 14) | protected override DatacubeGetarticlesummaryRequest InitRequestObject()
method GetResponse (line 24) | public override DatacubeGetArticlesResponse GetResponse()
method GetReturnResult (line 29) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/GetCurrentAutoreplyInfoTest.cs
class GetCurrentAutoreplyInfoTest (line 12) | public class GetCurrentAutoreplyInfoTest : MockPostApiBaseTest<GetCurren...
method MockCurrentAutoreplyInfoTest (line 15) | [Fact]
method InitRequestObject (line 24) | protected override GetCurrentAutoreplyInfoRequest InitRequestObject()
method GetReturnResult (line 32) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/GetCurrentSelfmenuInfoTest.cs
class GetCurrentSelfmenuInfoTest (line 12) | public class GetCurrentSelfmenuInfoTest : MockPostApiBaseTest<GetCurrent...
method GetCurrentSelfmenuTest (line 14) | [Fact]
method InitRequestObject (line 23) | protected override GetCurrentSelfmenuInfoRequest InitRequestObject()
method GetReturnResult (line 31) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/GroupCreateTest.cs
class GroupCreateTest (line 15) | public class GroupCreateTest : MockPostApiBaseTest<GroupsCreateRequest, ...
method MockGroupCreateTest (line 18) | [Fact]
method MockGroupCreateErrorTest (line 26) | [Fact]
method GetReturnResult (line 35) | protected override string GetReturnResult(bool errResult)
method InitRequestObject (line 54) | protected override GroupsCreateRequest InitRequestObject()
FILE: test/FrameworkCoreTest/Api/GroupsGetIdTest.cs
class GroupsGetIdTest (line 12) | public class GroupsGetIdTest : MockPostApiBaseTest<GroupsGetIdRequest, G...
method MockGroupsGetIdTest (line 16) | [Fact]
method MockGroupsGetIdErrorTest (line 23) | [Fact]
method GetReturnResult (line 30) | protected override string GetReturnResult(bool errResult)
method InitRequestObject (line 44) | protected override GroupsGetIdRequest InitRequestObject()
FILE: test/FrameworkCoreTest/Api/GroupsMembersUpdateTest.cs
class GroupsMembersUpdateTest (line 12) | public class GroupsMembersUpdateTest : MockPostApiBaseTest<GroupsMembers...
method GroupsMembersUpdateJsonTest (line 14) | [Fact]
method MockGroupsMemberUpdateTest (line 20) | [Fact]
method MockGroupsMemberUpdateErrorTest (line 30) | [Fact]
method InitRequestObject (line 40) | protected override GroupsMembersUpdateRequest InitRequestObject()
method GetReturnResult (line 50) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/GroupsQueryTest.cs
class GroupsQueryTest (line 13) | public class GroupsQueryTest : BaseTest
method GroupsQueryTestNoToken (line 15) | [Fact]
method MockGroupsQueryTest (line 26) | [Fact]
method GrousQueryTest (line 70) | [Fact]
FILE: test/FrameworkCoreTest/Api/GroupsUpdateTest.cs
class GroupsUpdateTest (line 12) | public class GroupsUpdateTest : MockPostApiBaseTest<GroupsUpdateRequest,...
method GroupsUpdateRequestJsonTest (line 14) | [Fact]
method MockGroupsUpdateTest (line 20) | [Fact]
method MockGroupsUpdateError (line 29) | [Fact]
method InitRequestObject (line 37) | protected override GroupsUpdateRequest InitRequestObject()
method GetReturnResult (line 50) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MediaGetTest.cs
class MediaGetTest (line 12) | public class MediaGetTest : MockPostApiBaseTest<MediaGetRequest, MediaGe...
method MockMediaGetTest (line 14) | [Fact]
method MockMediaGetErrorTest (line 23) | [Fact]
method ReallyMediaGetTest (line 33) | [Fact]
method InitRequestObject (line 41) | protected override MediaGetRequest InitRequestObject()
method GetReturnResult (line 50) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MediaUploadNewsTest.cs
class MediaUploadNewsTest (line 13) | public class MediaUploadNewsTest : MockPostApiBaseTest<MediaUploadNewsRe...
method MediaUploadNewsPostContentTest (line 15) | [Fact]
method MockMediaUploadNewsTest (line 21) | [Fact]
method MockMediaUploadNewsErrorTest (line 30) | [Fact]
method InitRequestObject (line 39) | protected override MediaUploadNewsRequest InitRequestObject()
method GetReturnResult (line 66) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MediaUploadTest.cs
class MediaUploadTest (line 17) | public class MediaUploadTest : MockPostApiBaseTest<MediaUploadRequest, M...
method MediaUploadReallyTest (line 20) | [Fact]
method MockMediaUploadTest (line 29) | [Fact]
method MockMediaUploadErrorTest (line 38) | [Fact]
method InitRequestObject (line 49) | protected override MediaUploadRequest InitRequestObject()
method GetReturnResult (line 59) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MenuCreateTest.cs
class MenuCreateTest (line 15) | public class MenuCreateTest : MockPostApiBaseTest<MenuCreateRequest, Men...
method MenuCreatePostContentTest (line 17) | [Fact]
method MockMenuCreateTest (line 23) | [Fact]
method MockMenuCreateErrorTest (line 31) | [Fact]
method ReallyMenuCreateTest (line 39) | [Fact]
method InitRequestObject (line 88) | protected override MenuCreateRequest InitRequestObject()
method GetReturnResult (line 126) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MenuGetTest.cs
class MenuGetTest (line 12) | public class MenuGetTest : MockPostApiBaseTest<MenuGetRequest, MenuGetRe...
method MockMenuGetTest (line 14) | [Fact]
method InitRequestObject (line 30) | protected override MenuGetRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MessageCustomSendRequestTest.cs
class MessageCustomSendRequestTest (line 14) | public class MessageCustomSendRequestTest : MockPostApiBaseTest<MessageC...
method SendRequestTest (line 16) | [Fact]
method ReallyMessageCustomSendTextTest (line 100) | [Fact]
method ReallyMessageCustomSendNewsTest (line 124) | [Fact]
method InitRequestObject (line 162) | protected override MessageCustomSendRequest InitRequestObject()
method GetReturnResult (line 167) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MockGetcallbackipTestTest.cs
class MockGetcallbackipTestTest (line 12) | public class MockGetcallbackipTestTest : MockPostApiBaseTest<Getcallback...
method MockCallbackiptest (line 14) | [Fact]
method InitRequestObject (line 26) | protected override GetcallbackipRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/MockPostApiBaseTest.cs
class MockPostApiBaseTest (line 13) | public abstract class MockPostApiBaseTest<TRequest, TResponse> : BaseTest
method InitRequestObject (line 34) | protected abstract TRequest InitRequestObject();
method MockSetup (line 38) | public void MockSetup(bool errResult)
method GetReturnResult (line 43) | protected abstract string GetReturnResult(bool errResult);
method GetCurrentToken (line 45) | public override string GetCurrentToken()
method MockGetPostContent (line 52) | [Fact]
method MockResponseTypeTest (line 58) | [Fact]
method GetResponse (line 72) | public virtual TResponse GetResponse()
method JsonSerialize (line 77) | protected string JsonSerialize(object obj)
FILE: test/FrameworkCoreTest/Api/OAuthAccessTokenTest.cs
class OAuthAccessTokenTest (line 12) | public class OAuthAccessTokenTest : MockPostApiBaseTest<SnsOAuthAccessTo...
method MockSnsOAuthAccessTokenTest (line 14) | [Fact]
method MockSnsOAuthAccessTokenErrorTest (line 26) | [Fact]
method InitRequestObject (line 34) | protected override SnsOAuthAccessTokenRequest InitRequestObject()
method GetReturnResult (line 44) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/OAuthManagerTest.cs
class OAuthManagerTest (line 11) | public class OAuthManagerTest
method BuildOAuthUrlScopeBaseTest (line 13) | [Fact]
method BuildOAuthUrlScopeUserInfoTest (line 20) | [Fact]
FILE: test/FrameworkCoreTest/Api/OAuthRefreshTokenTest.cs
class OAuthRefreshTokenTest (line 11) | public class OAuthRefreshTokenTest : MockPostApiBaseTest<SnsOauthRefresh...
method MockSnsOAuthRefreshTokenTest (line 13) | [Fact]
method MockSnsOAuthRefreshTokenErrorTest (line 25) | [Fact]
method InitRequestObject (line 33) | protected override SnsOauthRefreshTokenRequest InitRequestObject()
method GetReturnResult (line 42) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/QrCreatedRequestTestTest.cs
class QrCreatedRequestTestTest (line 12) | public class QrCreatedRequestTestTest : MockPostApiBaseTest<QrcodeCreate...
method InitRequestObject (line 14) | protected override QrcodeCreateRequest InitRequestObject()
method GetReturnResult (line 31) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/RequestMessageTest.cs
class RequestMessageTest (line 12) | public class RequestMessageTest
method VoiceRequestMessageTest (line 14) | [Fact]
FILE: test/FrameworkCoreTest/Api/ResponseMessageTest.cs
class ResponseMessageTest (line 11) | public class ResponseMessageTest
method ResponseImageMessageTest (line 13) | [Fact]
method ResponseVoiceMessageTest (line 30) | [Fact]
method ResponseVideoMessageTest (line 47) | [Fact]
method ResponseMusicMessageTest (line 66) | [Fact]
method ResponseNewsMessageTest (line 87) | [Fact]
FILE: test/FrameworkCoreTest/Api/SNSUserInfoTest.cs
class SNSUserInfoTest (line 13) | public class SNSUserInfoTest : MockPostApiBaseTest<SnsUserInfoRequest, S...
method MockSNSUserInfoTest (line 15) | [Fact]
method MockSNSUserInfoErrorTest (line 25) | [Fact]
method InitRequestObject (line 33) | protected override SnsUserInfoRequest InitRequestObject()
method GetReturnResult (line 43) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/ShorturlRequestTestTest.cs
class ShorturlRequestTestTest (line 12) | public class ShorturlRequestTestTest : MockPostApiBaseTest<ShorturlReque...
method InitRequestObject (line 14) | protected override ShorturlRequest InitRequestObject()
method GetReturnResult (line 24) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/UserGetTest.cs
class UserGetTest (line 13) | public class UserGetTest : MockPostApiBaseTest<UserGetRequest, UserGetRe...
method MockUserGetTest (line 15) | [Fact]
method MockUserGetErrorTest (line 26) | [Fact]
method ReallyUserGetTest (line 34) | [Fact]
method InitRequestObject (line 52) | protected override UserGetRequest InitRequestObject()
method GetReturnResult (line 61) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Api/UserInfoTest.cs
class UserInfoTest (line 12) | public class UserInfoTest : MockPostApiBaseTest<UserInfoRequest, UserInf...
method MockUserInfoTest (line 14) | [Fact]
method MockUserInfoErrorTest (line 25) | [Fact]
method InitRequestObject (line 34) | protected override UserInfoRequest InitRequestObject()
method GetReturnResult (line 44) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/BaseTest.cs
class BaseTest (line 15) | public abstract class BaseTest
method BaseTest (line 19) | static BaseTest()
method GetCurrentToken (line 32) | public virtual string GetCurrentToken()
method GetToken (line 54) | private string GetToken()
FILE: test/FrameworkCoreTest/CustomserviceKfsessionGetsessionlistTest.cs
class CustomserviceKfsessionGetsessionlistTest (line 12) | public class CustomserviceKfsessionGetsessionlistTest : MockPostApiBaseT...
method InitRequestObject (line 14) | protected override CustomserviceKfsessionGetsessionlistRequest InitReq...
method GetReturnResult (line 23) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 40) | public override CustomserviceKfsessionGetsessionlistResponse GetRespon...
FILE: test/FrameworkCoreTest/CustomserviceKfsessionGetwaitcaseTest.cs
class CustomserviceKfsessionGetwaitcaseTest (line 12) | public class CustomserviceKfsessionGetwaitcaseTest : MockPostApiBaseTest...
method InitRequestObject (line 14) | protected override CustomserviceKfsessionGetwaitcaseRequest InitReques...
method GetReturnResult (line 21) | protected override string GetReturnResult(bool errResult)
method GetResponse (line 41) | public override CustomserviceKfsessionGetwaitcaseResponse GetResponse()
FILE: test/FrameworkCoreTest/Logger.cs
class Logger (line 10) | public class Logger : ILogger
method Log (line 12) | public void Log(string content)
method Warn (line 17) | public void Warn(string content)
method Error (line 22) | public void Error(string content)
method Exception (line 27) | public void Exception(string content)
FILE: test/FrameworkCoreTest/Merchant/CreateTest.cs
class CreateTest (line 13) | public class CreateTest : MockPostApiBaseTest<MerchantCreateRequest, Mer...
method MockMerchantCreateTest (line 15) | [Fact]
method MockMerchantCreateGetPostContent (line 23) | [Fact]
method InitRequestObject (line 29) | protected override MerchantCreateRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
method GetProduct (line 44) | private ProductInfo GetProduct()
FILE: test/FrameworkCoreTest/Merchant/MerchantCategoryGetskuTest.cs
class MerchantCategoryGetskuTest (line 14) | public class MerchantCategoryGetskuTest : MockPostApiBaseTest<MerchantCa...
method MerchantCategoryGetskuSuccess (line 16) | [Fact]
method InitRequestObject (line 25) | protected override MerchantCategoryGetskuRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantCategoryGetsubTest.cs
class MerchantCategoryGetsubTest (line 14) | public class MerchantCategoryGetsubTest : MockPostApiBaseTest<MerchantCa...
method MockMerchantCategoryGetsubSuccessTest (line 16) | [Fact]
method InitRequestObject (line 25) | protected override MerchantCategoryGetsubRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantCommonUploadimgTest.cs
class MerchantCommonUploadimgTest (line 12) | public class MerchantCommonUploadimgTest : MockPostApiBaseTest<MerchantC...
method MockSuccess (line 14) | [Fact]
method InitRequestObject (line 23) | protected override MerchantCommonUploadimgRequest InitRequestObject()
method GetReturnResult (line 33) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantDelTest.cs
class MerchantDelTest (line 12) | public class MerchantDelTest : MockPostApiBaseTest<MerchantDelRequest, D...
method MockGetPostContent (line 14) | [Fact]
method MockDeleteSuccess (line 20) | [Fact]
method InitRequestObject (line 29) | protected override MerchantDelRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantExpressAddTest.cs
class MerchantExpressAddTest (line 14) | public class MerchantExpressAddTest : MockPostApiBaseTest<MerchantExpres...
method MockMerchantExpressAddSuccess (line 16) | [Fact]
method MockGetPostContent (line 25) | [Fact]
method InitRequestObject (line 31) | protected override MerchantExpressAddRequest InitRequestObject()
method GetReturnResult (line 108) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantExpressDelTest.cs
class MerchantExpressDelTest (line 12) | public class MerchantExpressDelTest : MockPostApiBaseTest<MerchantExpres...
method Fail (line 14) | [Fact]
method Success (line 22) | [Fact]
method InitRequestObject (line 30) | protected override MerchantExpressDelRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantExpressGetallTest.cs
class MerchantExpressGetallTest (line 14) | public class MerchantExpressGetallTest : MockPostApiBaseTest<MerchantExp...
method MockSuccess (line 16) | [Fact]
method MockGetPostContent (line 24) | [Fact]
method InitRequestObject (line 30) | protected override MerchantExpressGetallRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
method GetTemplate (line 57) | private DeliveryTemplate GetTemplate(long id)
FILE: test/FrameworkCoreTest/Merchant/MerchantExpressGetbyidTest.cs
class MerchantExpressGetbyidTest (line 14) | public class MerchantExpressGetbyidTest : MockPostApiBaseTest<MerchantEx...
method MockSuccess (line 16) | [Fact]
method InitRequestObject (line 27) | protected override MerchantExpressGetbyidRequest InitRequestObject()
method GetReturnResult (line 36) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantExpressUpdateTest.cs
class MerchantExpressUpdateTest (line 13) | public class MerchantExpressUpdateTest : MockPostApiBaseTest<MerchantExp...
method Success (line 15) | [Fact]
method InitRequestObject (line 23) | protected override MerchantExpressUpdateRequest InitRequestObject()
method GetReturnResult (line 101) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGetTest.cs
class MerchantGetTest (line 14) | public class MerchantGetTest : MockPostApiBaseTest<MerchantGetRequest, M...
method MockGetSuccessTest (line 16) | [Fact]
method InitRequestObject (line 26) | protected override MerchantGetRequest InitRequestObject()
method GetReturnResult (line 35) | protected override string GetReturnResult(bool errResult)
method GetProduct (line 43) | private ProductInfo GetProduct()
FILE: test/FrameworkCoreTest/Merchant/MerchantGetbystatus.cs
class MerchantGetbystatus (line 14) | public class MerchantGetbystatus : MockPostApiBaseTest<MerchantGetbystat...
method MockMerchantGetBystatusTest (line 16) | [Fact]
method InitRequestObject (line 25) | protected override MerchantGetbystatusRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
method GetProduct (line 54) | private ProductInfo GetProduct(string productId)
FILE: test/FrameworkCoreTest/Merchant/MerchantGetpropertyTest.cs
class MerchantGetpropertyTest (line 14) | public class MerchantGetpropertyTest : MockPostApiBaseTest<MerchantCateg...
method MerchantCategoryGetpropertySuccess (line 16) | [Fact]
method InitRequestObject (line 25) | protected override MerchantCategoryGetpropertyRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupAddTest.cs
class MerchantGroupAddTest (line 13) | public class MerchantGroupAddTest : MockPostApiBaseTest<MerchantGroupAdd...
method MockSuccess (line 15) | [Fact]
method InitRequestObject (line 24) | protected override MerchantGroupAddRequest InitRequestObject()
method GetReturnResult (line 37) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupDelTest.cs
class MerchantGroupDelTest (line 12) | public class MerchantGroupDelTest : MockPostApiBaseTest<MerchantGroupDel...
method MockSuccess (line 14) | [Fact]
method InitRequestObject (line 22) | protected override MerchantGroupDelRequest InitRequestObject()
method GetReturnResult (line 31) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupGetallTest.cs
class MerchantGroupGetallTest (line 13) | public class MerchantGroupGetallTest : MockPostApiBaseTest<MerchantGroup...
method MockSuccess (line 15) | [Fact]
method InitRequestObject (line 24) | protected override MerchantGroupGetallRequest InitRequestObject()
method GetReturnResult (line 32) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupGetbyidTest.cs
class MerchantGroupGetbyidTest (line 12) | public class MerchantGroupGetbyidTest : MockPostApiBaseTest<MerchantGrou...
method MockSuccess (line 14) | [Fact]
method InitRequestObject (line 24) | protected override MerchantGroupGetbyidRequest InitRequestObject()
method GetReturnResult (line 33) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupProductmodTest.cs
class MerchantGroupProductmodTest (line 13) | public class MerchantGroupProductmodTest : MockPostApiBaseTest<MerchantG...
method InitRequestObject (line 15) | protected override MerchantGroupProductmodRequest InitRequestObject()
method GetReturnResult (line 31) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantGroupPropertymodTest.cs
class MerchantGroupPropertymodTest (line 12) | public class MerchantGroupPropertymodTest : MockPostApiBaseTest<Merchant...
method InitRequestObject (line 15) | protected override MerchantGroupPropertymodRequest InitRequestObject()
method GetReturnResult (line 28) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantModproductstatusTest.cs
class MerchantModproductstatusTest (line 12) | public class MerchantModproductstatusTest : MockPostApiBaseTest<Merchant...
method MockMerchantModProductStatusTest (line 14) | [Fact]
method InitRequestObject (line 22) | protected override MerchantModproductstatusRequest InitRequestObject()
method GetReturnResult (line 32) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantOrderCloseTest.cs
class MerchantOrderCloseTest (line 12) | public class MerchantOrderCloseTest : MockPostApiBaseTest<MerchantOrderC...
method InitRequestObject (line 14) | protected override MerchantOrderCloseRequest InitRequestObject()
method GetReturnResult (line 23) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantOrderGetbyfilterTest.cs
class MerchantOrderGetbyfilterTest (line 12) | public class MerchantOrderGetbyfilterTest : MockPostApiBaseTest<Merchant...
method MockSuccess (line 14) | [Fact]
method InitRequestObject (line 22) | protected override MerchantOrderGetbyfilterRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantOrderGetbyidTest.cs
class MerchantOrderGetbyidTest (line 12) | public class MerchantOrderGetbyidTest : MockPostApiBaseTest<MerchantOrde...
method MockSuccess (line 14) | [Fact]
method InitRequestObject (line 25) | protected override MerchantOrderGetbyidRequest InitRequestObject()
method GetReturnResult (line 34) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantOrderSetdeliveryTest.cs
class MerchantOrderSetdeliveryTest (line 13) | public class MerchantOrderSetdeliveryTest : MockPostApiBaseTest<Merchant...
method InitRequestObject (line 17) | protected override MerchantOrderSetdeliveryRequest InitRequestObject()
method GetReturnResult (line 28) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantShelfAddTest.cs
class MerchantShelfAddTest (line 13) | public class MerchantShelfAddTest : MockPostApiBaseTest<MerchantShelfAdd...
method MerchantShelfAddPostContentTest (line 15) | [Fact]
method InitRequestObject (line 23) | protected override MerchantShelfAddRequest InitRequestObject()
method GetReturnResult (line 51) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantShelfDelTest.cs
class MerchantShelfDelTest (line 12) | public class MerchantShelfDelTest : MockPostApiBaseTest<MerchantShelfDel...
method InitRequestObject (line 14) | protected override MerchantShelfDelRequest InitRequestObject()
method GetReturnResult (line 23) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantShelfGetallTest.cs
class MerchantShelfGetallTest (line 13) | public class MerchantShelfGetallTest : MockPostApiBaseTest<MerchantShelf...
method MockSuccess (line 15) | [Fact]
method InitRequestObject (line 35) | protected override MerchantShelfGetallRequest InitRequestObject()
method GetReturnResult (line 43) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantShelfGetbyidTest.cs
class MerchantShelfGetbyidTest (line 13) | public class MerchantShelfGetbyidTest : MockPostApiBaseTest<MerchantShel...
method MockSuccess (line 15) | [Fact]
method InitRequestObject (line 26) | protected override MerchantShelfGetbyidRequest InitRequestObject()
method GetReturnResult (line 35) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantShelfUpdatestatusTest.cs
class MerchantShelfUpdatestatusTest (line 12) | public class MerchantShelfUpdatestatusTest : MockPostApiBaseTest<Merchan...
method MockSuccess (line 14) | [Fact]
method MockThrow (line 23) | [Fact]
method InitRequestObject (line 34) | protected override MerchantShelfUpdatestatusRequest InitRequestObject()
method GetReturnResult (line 44) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantStockAddTest.cs
class MerchantStockAddTest (line 12) | public class MerchantStockAddTest : MockPostApiBaseTest<MerchantStockAdd...
method MockMerchantStockAddSuccess (line 14) | [Fact]
method MockGetPostContent (line 22) | [Fact]
method InitRequestObject (line 28) | protected override MerchantStockAddRequest InitRequestObject()
method GetReturnResult (line 39) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantStockReductTest.cs
class MerchantStockReductTest (line 12) | public class MerchantStockReductTest : MockPostApiBaseTest<MerchantStock...
method MockMerchantStockReduceSuccess (line 14) | [Fact]
method MockGetPostContent (line 22) | [Fact]
method InitRequestObject (line 28) | protected override MerchantStockReduceRequest InitRequestObject()
method GetReturnResult (line 39) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Merchant/MerchantUpdateTest.cs
class MerchantUpdateTest (line 13) | public class MerchantUpdateTest : MockPostApiBaseTest<MerchantUpdateRequ...
method MockGetPostContent (line 15) | [Fact]
method MockUpdateTest (line 21) | [Fact]
method InitRequestObject (line 29) | protected override MerchantUpdateRequest InitRequestObject()
method GetReturnResult (line 38) | protected override string GetReturnResult(bool errResult)
method GetProduct (line 43) | private ProductInfo GetProduct()
FILE: test/FrameworkCoreTest/Pay/PayOrderQueryTest.cs
class PayOrderQueryTest (line 12) | public class PayOrderQueryTest : PayTest<PayOrderqueryRequest, PayOrderq...
method GetRequest (line 14) | protected override PayOrderqueryRequest GetRequest()
method GetResponseXml (line 24) | protected override string GetResponseXml()
FILE: test/FrameworkCoreTest/Pay/PayRefundTest.cs
class PayRefundTest (line 11) | public class PayRefundTest : PayTest<PayRefundRequest, PayRefundResponse>
method GetRequest (line 13) | protected override PayRefundRequest GetRequest()
method GetResponseXml (line 28) | protected override string GetResponseXml()
FILE: test/FrameworkCoreTest/Pay/PayTest.cs
class PayTest (line 17) | public abstract class PayTest<T, K>
method MockTest (line 21) | [Fact]
method ReallyTest (line 42) | [Fact]
method GetRequest (line 68) | protected abstract T GetRequest();
method GetResponseXml (line 70) | protected abstract string GetResponseXml();
method ParseResponse (line 72) | protected K ParseResponse(string xml)
FILE: test/FrameworkCoreTest/Pay/PayUnifiedorderTest.cs
class PayUnifiedorderTest (line 13) | public class PayUnifiedorderTest : PayTest<PayUnifiedOrderRequest, PayUn...
method GetRequest (line 16) | protected override PayUnifiedOrderRequest GetRequest()
method GetResponseXml (line 37) | protected override string GetResponseXml()
FILE: test/FrameworkCoreTest/Pay/ReallyPayUnifiedorderRequestTest.cs
class ReallyPayUnifiedorderRequestTest (line 11) | public class ReallyPayUnifiedorderRequestTest : PayTest<PayUnifiedOrderR...
method GetRequest (line 13) | protected override PayUnifiedOrderRequest GetRequest()
method GetResponseXml (line 36) | protected override string GetResponseXml()
FILE: test/FrameworkCoreTest/Template/TemplateSendTest.cs
class TemplateSendTest (line 13) | public class TemplateSendTest : MockPostApiBaseTest<TemplateSendRequest,...
method TemplateSend (line 16) | [Fact]
method InitRequestObject (line 25) | protected override TemplateSendRequest InitRequestObject()
method GetReturnResult (line 45) | protected override string GetReturnResult(bool errResult)
FILE: test/FrameworkCoreTest/Template/TemplateSetindustrayTest.cs
class TemplateSetindustrayTest (line 12) | public class TemplateSetindustrayTest : MockPostApiBaseTest<TemplateApis...
method GetPostContentTest (line 14) | [Fact]
method InitRequestObject (line 20) | protected override TemplateApisetindustryRequest InitRequestObject()
method GetReturnResult (line 30) | protected override string GetReturnResult(bool errResult)
Condensed preview — 406 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (5,363K chars).
[
{
"path": ".gitattributes",
"chars": 483,
"preview": "# Auto detect text files and perform LF normalization\n* text=auto\n\n# Custom for Visual Studio\n*.cs diff=csharp\n*.sln"
},
{
"path": ".gitignore",
"chars": 2719,
"preview": "#################\n## Eclipse\n#################\n\n*.pydevproject\n.project\n.metadata\nbin/\ntmp/\n*.tmp\n*.bak\n*.swp\n*~.nib\nloc"
},
{
"path": "Business/Api/DefaultApiClient.cs",
"chars": 2037,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System"
},
{
"path": "Business/Api/IApiClient.cs",
"chars": 284,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiRequests;\nusing"
},
{
"path": "Business/ApiAccessTokenManager.cs",
"chars": 3075,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Api;\nusing WX.Model;\nusi"
},
{
"path": "Business/Common/DataSecret.cs",
"chars": 663,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Security.Cryptography;\nusing System.Tex"
},
{
"path": "Business/Common/DateTimeExtend.cs",
"chars": 578,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX\n{\n public static"
},
{
"path": "Business/Common/HttpHelper.cs",
"chars": 7163,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Collections.Specialized;\nusing System.IO;\nusing System.Lin"
},
{
"path": "Business/Common/ShelfModuleConverter.cs",
"chars": 1218,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/CustomAccount.cs",
"chars": 1964,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/IMessageHandler.cs",
"chars": 273,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\nusing WX.M"
},
{
"path": "Business/IMessageRole.cs",
"chars": 277,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System.Text;\nusing System.Xml"
},
{
"path": "Business/Logger/ILogger.cs",
"chars": 301,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Logger\n{\n public"
},
{
"path": "Business/Model/ApiRequests/AccessTokenCodeRequest.cs",
"chars": 890,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/AccessTokenRequest.cs",
"chars": 1233,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/ApiGetNeedTokenRequest.cs",
"chars": 744,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/ApiPostNeedTokenRequest.cs",
"chars": 788,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/ApiRequest.cs",
"chars": 1624,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.L"
},
{
"path": "Business/Model/ApiRequests/CustomServiceGetRecordRequest.cs",
"chars": 1996,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceGetkflistRequest.cs",
"chars": 888,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceGetonlinekflistRequest.cs",
"chars": 877,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfaccountAddRequest.cs",
"chars": 1429,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfaccountUpdateRequest.cs",
"chars": 1411,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfaccountUploadheadimgRequest.cs",
"chars": 1180,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfsessionCloseRequest.cs",
"chars": 1130,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfsessionCreateRequest.cs",
"chars": 1133,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfsessionGetsessionRequest.cs",
"chars": 701,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfsessionGetsessionlistRequest.cs",
"chars": 666,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/CustomserviceKfsessionGetwaitcaseRequest.cs",
"chars": 463,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/CustomservicesKfaccountDelRequest.cs",
"chars": 1073,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetInterfaceRequest.cs",
"chars": 951,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetInterfaceSummaryHourRequest.cs",
"chars": 473,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetInterfaceSummaryRequest.cs",
"chars": 459,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetStreamMsgRequest.cs",
"chars": 950,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistMonth.cs",
"chars": 467,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistRequest.cs",
"chars": 458,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgDistWeek.cs",
"chars": 460,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgHourRequest.cs",
"chars": 458,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgMonthRequest.cs",
"chars": 459,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgRequest.cs",
"chars": 445,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUpStreamMsgWeekRequest.cs",
"chars": 457,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUserCumulateRequest.cs",
"chars": 1208,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetUserSummaryRequest.cs",
"chars": 1204,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetarticlesummaryRequest.cs",
"chars": 1885,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Globalization;\nusing System.Linq;\nu"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetarticletotalRequest.cs",
"chars": 493,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetuserreadRequest.cs",
"chars": 479,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetuserreadhourRequest.cs",
"chars": 494,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetusershareRequest.cs",
"chars": 414,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/DatacubeGetusersharehourRequest.cs",
"chars": 422,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/GetCurrentAutoreplyInfoRequest.cs",
"chars": 848,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/GetCurrentSelfmenuInfoRequest.cs",
"chars": 845,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/GetcallbackipRequest.cs",
"chars": 937,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/GroupsCreateRequest.cs",
"chars": 1298,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/GroupsGetIdRequest.cs",
"chars": 914,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/GroupsMembersUpdateRequest.cs",
"chars": 1034,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/GroupsQueryRequest.cs",
"chars": 820,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/GroupsUpdateRequest.cs",
"chars": 928,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MaterialAddNewsRequest.cs",
"chars": 1023,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MediaGetRequest.cs",
"chars": 1259,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MediaUploadNewsRequest.cs",
"chars": 965,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MediaUploadRequest.cs",
"chars": 1672,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.A"
},
{
"path": "Business/Model/ApiRequests/MenuCreateRequest.cs",
"chars": 1192,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MenuDeleteRequest.cs",
"chars": 826,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MenuGetRequest.cs",
"chars": 810,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MerchantCategoryGetPropertyRequest.cs",
"chars": 972,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantCategoryGetskuRequest.cs",
"chars": 957,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantCategoryGetsubRequest.cs",
"chars": 957,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantCommonUploadimgRequest.cs",
"chars": 952,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MerchantCreateRequest.cs",
"chars": 918,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantDelRequest.cs",
"chars": 923,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantExpressAddRequest.cs",
"chars": 977,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantExpressDelRequest.cs",
"chars": 942,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantExpressGetallRequest.cs",
"chars": 849,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MerchantExpressGetbyidRequest.cs",
"chars": 965,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantExpressUpdateRequest.cs",
"chars": 1056,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGetRequest.cs",
"chars": 927,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGetbystatus.cs",
"chars": 1155,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupAddRequest.cs",
"chars": 1221,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupDelRequest.cs",
"chars": 932,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupGetallRequest.cs",
"chars": 843,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupGetbyidRequest.cs",
"chars": 952,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupProductmodRequest.cs",
"chars": 1204,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantGroupPropertymodRequest.cs",
"chars": 1208,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantModproductstatusRequest.cs",
"chars": 1406,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantOrderCloseRequest.cs",
"chars": 937,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantOrderGetbyfilterRequest.cs",
"chars": 1537,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantOrderGetbyidRequest.cs",
"chars": 955,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantOrderSetdeliveryRequest.cs",
"chars": 1143,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfAddRequest.cs",
"chars": 2842,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfDelRequest.cs",
"chars": 932,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfGetallRequest.cs",
"chars": 843,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfGetbyidRequest.cs",
"chars": 953,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfMod.cs",
"chars": 2524,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantShelfUpdatestatusRequest.cs",
"chars": 1275,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantStockAddRequest.cs",
"chars": 1216,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantStockReduceRequest.cs",
"chars": 1102,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MerchantUpdateRequest.cs",
"chars": 911,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendImageRequest.cs",
"chars": 408,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendMusicRequest.cs",
"chars": 353,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiRequests\n{"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendNewsRequest.cs",
"chars": 403,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendRequest.cs",
"chars": 1060,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendTextRequest.cs",
"chars": 403,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendVideoRequest.cs",
"chars": 408,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiRequests/MessageCustomSendVoiceRequest.cs",
"chars": 408,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiRequests/MessageMassDeleteRequest.cs",
"chars": 943,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MessageMassSendAllRequest.cs",
"chars": 1355,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/MessageMassSendRequest.cs",
"chars": 1104,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/QrcodeCreateRequest.cs",
"chars": 2117,
"preview": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Converters;\nusing System;\nusing System.Collections.Generic;\nusing System.L"
},
{
"path": "Business/Model/ApiRequests/ShorturlRequest.cs",
"chars": 1450,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/SnsOAuthAccessTokenRequest.cs",
"chars": 1028,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/SnsOauthRefreshTokenRequest.cs",
"chars": 981,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/SnsUserInfoRequest.cs",
"chars": 1753,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/TemplateApiaddtemplateRequest.cs",
"chars": 1130,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/TemplateApisetindustryRequest.cs",
"chars": 1664,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/TemplateSendRequest.cs",
"chars": 2175,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/UserGetRequest.cs",
"chars": 947,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiRequests/UserInfoRequest.cs",
"chars": 933,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.Model.ApiResponses;\n\nnam"
},
{
"path": "Business/Model/ApiRequests/UserInfoUpdateremarkRequest.cs",
"chars": 1260,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.M"
},
{
"path": "Business/Model/ApiResponses/AccessTokenCodeResponse.cs",
"chars": 419,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/AccessTokenResponse.cs",
"chars": 505,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/ApiResponse.cs",
"chars": 742,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomServiceGetRecordResponse.cs",
"chars": 318,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomserviceGetkflistResponse.cs",
"chars": 320,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomserviceGetonlinekflistResponse.cs",
"chars": 332,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomserviceKfsessionCloseResponse.cs",
"chars": 203,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/CustomserviceKfsessionCreateResponse.cs",
"chars": 204,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/CustomserviceKfsessionGetsessionResponse.cs",
"chars": 538,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomserviceKfsessionGetsessionlistResponse.cs",
"chars": 337,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/CustomserviceKfsessionGetwaitcaseResponse.cs",
"chars": 407,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DatacubeGetArticlesResponse.cs",
"chars": 678,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DatacubeGetInterfaceResponse.cs",
"chars": 315,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DatacubeGetStreamMsgResponse.cs",
"chars": 309,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DatacubeGetUserCumulateResponse.cs",
"chars": 313,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DatacubeGetUserSummaryResponse.cs",
"chars": 312,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/DefaultResponse.cs",
"chars": 190,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/GetCurrentAutoreplyInfoResponse.cs",
"chars": 1156,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/GetCurrentSelfmenuInfoResponse.cs",
"chars": 540,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/GetcallbackipResponse.cs",
"chars": 371,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/GroupCreateResponse.cs",
"chars": 443,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/GroupsGetIdResponse.cs",
"chars": 415,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/GroupsMembersUpdateResponse.cs",
"chars": 195,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/GroupsQueryResponse.cs",
"chars": 242,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/GroupsUpdateResponse.cs",
"chars": 383,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MaterialAddNewsResponse.cs",
"chars": 356,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MediaGetResponse.cs",
"chars": 185,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MediaUploadNewsResponse.cs",
"chars": 417,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MediaUploadResponse.cs",
"chars": 452,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MenuCreateResponse.cs",
"chars": 186,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MenuDeleteResponse.cs",
"chars": 186,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MenuGetResponse.cs",
"chars": 375,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantCategoryGetpropertyResponse.cs",
"chars": 325,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantCategoryGetskuResponse.cs",
"chars": 318,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantCategoryGetsubResponse.cs",
"chars": 313,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantCommonUploadimgResponse.cs",
"chars": 303,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantCreateResponse.cs",
"chars": 296,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantExpressAddResponse.cs",
"chars": 351,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantExpressGetallResponse.cs",
"chars": 330,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantExpressGetbyidResponse.cs",
"chars": 320,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantGetResponse.cs",
"chars": 302,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantGetbystatusResponse.cs",
"chars": 325,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantGroupAddResponse.cs",
"chars": 292,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantGroupGetallResponse.cs",
"chars": 333,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantGroupGetbyidResponse.cs",
"chars": 319,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantOrderGetbyfilterResponse.cs",
"chars": 322,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantOrderGetbyidResponse.cs",
"chars": 296,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantShelfAddResponse.cs",
"chars": 292,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantShelfGetallResponse.cs",
"chars": 312,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantShelfGetbyidResponse.cs",
"chars": 944,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MerchantShelfUpdatestatusResponse.cs",
"chars": 305,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MessageCustomSendResponse.cs",
"chars": 193,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MessageMassDeleteResponse.cs",
"chars": 194,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/ApiResponses/MessageMassSendAllResponse.cs",
"chars": 289,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/MessageMassSendResponse.cs",
"chars": 286,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/QrcodeCreateResponse.cs",
"chars": 343,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/ShorturlResponse.cs",
"chars": 288,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/SnsOAuthAccessTokenResponse.cs",
"chars": 628,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/SnsUserInfoResponse.cs",
"chars": 656,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/TemplateApiaddtemplateResponse.cs",
"chars": 368,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/TemplateSendResponse.cs",
"chars": 346,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/UserGetResponse.cs",
"chars": 539,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/ApiResponses/UserInfoResponse.cs",
"chars": 677,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.ApiResponses\n"
},
{
"path": "Business/Model/AppIdentication.cs",
"chars": 401,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model\n{\n public "
},
{
"path": "Business/Model/ClickButton.cs",
"chars": 1347,
"preview": "using Newtonsoft.Json;\nusing Newtonsoft.Json.Converters;\nusing System;\nusing System.Collections.Generic;\nusing System.L"
},
{
"path": "Business/Model/Exceptions/WXApiException.cs",
"chars": 394,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace WX.Model.Exceptions\n{\n"
},
{
"path": "Business/Model/Group.cs",
"chars": 535,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/MerchantInfoModel.cs",
"chars": 17983,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing WX.C"
},
{
"path": "Business/Model/MiddleMessage.cs",
"chars": 2867,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/OrderInfoModel.cs",
"chars": 2840,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\n\nnamespace"
},
{
"path": "Business/Model/PublicMessage.cs",
"chars": 16580,
"preview": "using Newtonsoft.Json;\nusing System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing Syst"
},
{
"path": "Business/Model/Request/RequestClickEventMessage.cs",
"chars": 413,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestEventMessage.cs",
"chars": 543,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestImageMessage.cs",
"chars": 597,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestLinkMessage.cs",
"chars": 699,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestLocationEventMessage.cs",
"chars": 848,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestLocationMessage.cs",
"chars": 857,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestMassSendEventMessage.cs",
"chars": 924,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestMessage.cs",
"chars": 954,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.IO;\nusing System.Linq;\nusing System.Text;\nusing System.Xml"
},
{
"path": "Business/Model/Request/RequestOrderEventMessage.cs",
"chars": 730,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestQREventMessage.cs",
"chars": 506,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
},
{
"path": "Business/Model/Request/RequestShortVideoMessage.cs",
"chars": 734,
"preview": "using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Text;\nusing System.Xml.Linq;\n\nnamespace"
}
]
// ... and 206 more files (download for full content)
About this extraction
This page contains the full source code of the JamesYing/JCWX GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 406 files (4.9 MB), approximately 1.3M tokens, and a symbol index with 1056 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.