admin/public/favicon.icoadmin/public/index.html
@@ -5,7 +5,7 @@ <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <link rel="icon" href="<%= BASE_URL %>favicon.ico"> <title>è¿å¿«åå°ç®¡çç³»ç»</title> <title>é«éç«è¡æå¯å管çç³»ç»</title> </head> <body> <div id="app"></div> admin/src/assets/logo.pngadmin/src/components/business/OperaAreasWindow.vue
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,94 @@ <template> <GlobalWindow :title="title" :visible.sync="visible" :confirm-working="isWorking" @confirm="confirm" > <el-form :model="form" ref="form" label-suffix="ï¼" :rules="rules"> <el-form-item :label="form.type==1?'å¸åç§°':'å¿åºåç§°'" prop="name"> <el-input v-model="form.name" :placeholder="form.type==1?'è¾å ¥å¸åç§°':'è¾å ¥å¿åºåç§°'" v-trim/> </el-form-item> <el-form-item label="æåºç " prop="sortnum"> <el-input v-model="form.sortnum" type="number" placeholder="请è¾å ¥æåºç " v-trim/> </el-form-item> </el-form> </GlobalWindow> </template> <script> import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' export default { name: 'OperaAreasWindow', extends: BaseOpera, components: { GlobalWindow }, data () { return { // è¡¨åæ°æ® form: { id: null, parentId: null, name: null, sortnum: '0', type: '', }, // éªè¯è§å rules: { } } }, created () { this.config({ api: '/business/areas', 'field.id': 'id' }) }, methods: { // 确认æ°å»º __confirmCreate () { this.$refs.form.validate((valid) => { if (!valid) { return } // è°ç¨æ°å»ºæ¥å£ this.isWorking = true this.api.create(this.form) .then(() => { this.visible = false this.$tip.apiSuccess('æ°å»ºæå') this.$emit('success', this.form.parentId) }) .catch(e => { this.$tip.apiFailed(e) }) .finally(() => { this.isWorking = false }) }) }, // ç¡®è®¤ä¿®æ¹ __confirmEdit () { this.$refs.form.validate((valid) => { if (!valid) { return } // è°ç¨æ°å»ºæ¥å£ this.isWorking = true this.api.updateById(this.form) .then(() => { this.visible = false this.$tip.apiSuccess('ä¿®æ¹æå') this.$emit('success', this.form.parentId) }) .catch(e => { this.$tip.apiFailed(e) }) .finally(() => { this.isWorking = false }) }) } }, } </script> admin/src/components/business/OperaCityPriceRuleWindow.vue
@@ -6,7 +6,7 @@ > <el-tabs v-model="activeTab"> <el-tab-pane label="å°±å°å¯å" name="local"> <div class="price-tip">æ ¹æ®è¡æå°ºå¯¸ä»¥ååæ¾å¤©æ°æ¶è´¹ï¼ä¸è¶³ä¸å¤©æä¸å¤©è®¡ä»·ï¼</div> <div class="tip-warn"><i class="el-icon-warning"></i>æ ¹æ®è¡æå°ºå¯¸ä»¥ååæ¾å¤©æ°æ¶è´¹ï¼ä¸è¶³ä¸å¤©æä¸å¤©è®¡ä»·ï¼</div> <div class="price-items"> <div class="price-item" v-for="(item, index) in jiudiTableData" :key="index"> <span class="price-label">å ¶ä¸{{item.categoryName}}æ¯å¤©æ¶è´¹</span> @@ -18,7 +18,7 @@ <el-tab-pane label="å¼å°å¯å" name="remote"> <div class="remote-config-title">å¼å°å¯éé ç½®</div> <div class="remote-header"> <span class="remote-tip">æ ¹æ®è¡æå°ºå¯¸ãé ééç¨åé éä»·æ ¼æ¶åè´¹ç¨ï¼ä¸è¶³1å ¬éæ1å ¬é计价ï¼</span> <span class="remote-tip"> <p class="tip-warn"><i class="el-icon-warning"></i>æ ¹æ®è¡æå°ºå¯¸ãé ééç¨åé éä»·æ ¼æ¶åè´¹ç¨ï¼ä¸è¶³1å ¬éæ1å ¬é计价ï¼</p></span> </div> <el-table :data="remoteTableData" border stripe> <el-table-column prop="categoryName" label="è¡æå°ºå¯¸"></el-table-column> @@ -47,7 +47,7 @@ <el-tab-pane label="é¢è®¡æ¶æ" name="time"> <div class="remote-config-title">é¢è®¡æ¶æè§å</div> <div class="remote-header"> <span class="remote-tip">æ ¹æ®é ééç¨é¢è®¡é éæ¶é¿å¹¶å±ç¤ºå¨å°ç¨åºä¸å页é¢</span> <span class="remote-tip"><p class="tip-warn"><i class="el-icon-warning"></i>æ ¹æ®é ééç¨é¢è®¡é éæ¶é¿å¹¶å±ç¤ºå¨å°ç¨åºä¸å页é¢</p></span> </div> <el-table :data="timeTableData" border stripe> <el-table-column label="èµ·ééç¨(å ¬é)"> @@ -73,7 +73,8 @@ </el-table> </el-tab-pane> <el-tab-pane label="é¨åºæ³¨åæ¼é" name="deposit"> <div class="price-tip">æ ¹æ®æå¨åå¸ä»¥å注åç±»åä¸åï¼å¹³å°æ¶åä¸åæ°é¢æ¼éãæ¼éä¼å¨é¨åºéç½å线ä¸åé¢éè¿ï¼é¨åºçº¿ä¸å¾®ä¿¡æ¯ä»çæ¼éå å¾®ä¿¡å®æ¹è¦æ±å ·ææ¶ææ§ï¼</div> <div class="price-tip"><p class="tip-warn"><i class="el-icon-warning"></i> æ ¹æ®æå¨åå¸ä»¥å注åç±»åä¸åï¼å¹³å°æ¶åä¸åæ°é¢æ¼éãæ¼éä¼å¨é¨åºéç½å线ä¸åé¢éè¿ï¼é¨åºçº¿ä¸å¾®ä¿¡æ¯ä»çæ¼éå å¾®ä¿¡å®æ¹è¦æ±å ·ææ¶ææ§ï¼</p></div> <div class="price-items"> <div class="price-item" v-for="(item, index) in storeDepositData" :key="index"> <span class="price-label">å ¶ä¸{{item.fieldTypeName}}æ¶åæ¼é</span> @@ -83,7 +84,7 @@ </div> </el-tab-pane> <el-tab-pane label="åææ¯ä¾" name="share"> <div class="price-tip">æ ¹æ®è®¢åä¸ä¸åè¿è¥è§è²èç¬ç«é ç½®ä¸ååææ¯ä¾</div> <div class="price-tip"><p class="tip-warn"><i class="el-icon-warning"></i>æ ¹æ®è®¢åä¸ä¸åè¿è¥è§è²èç¬ç«é ç½®ä¸ååææ¯ä¾</p></div> <div class="price-items"> <div class="price-item" v-for="(item, index) in shareTableData" :key="index"> <span class="price-label">{{item.fieldType === 4 ? 'å¨è®¢åä¸ä½ä¸ºé éåæ¶ï¼' : 'å ¶ä¸é¨åºç±»å为'}}{{item.fieldTypeName}}åææ¯ä¾ä¸º</span> @@ -297,8 +298,9 @@ </script> <style scoped> .price-tip { margin-bottom: 20px; /*margin-bottom: 20px;*/ color: #666; font-size: 14px; } @@ -311,10 +313,11 @@ display: flex; align-items: center; gap: 10px; font-size: 14px; } .price-label { flex-shrink: 0; font-weight: 500; /*font-weight: 500;*/ } .price-unit { color: #666; @@ -334,7 +337,7 @@ display: flex; align-items: center; gap: 15px; margin-bottom: 15px; /*margin-bottom: 15px;*/ } .remote-tip { color: #666; @@ -344,4 +347,4 @@ margin-top: 15px; text-align: right; } </style> </style> admin/src/components/business/OperaShopInfoWindow.vue
@@ -7,11 +7,12 @@ > <div class="store-header" v-if="storeInfo"> <div class="store-header-left"> <el-image :src="storeInfo.payMemberCoverImage ? storeInfo.imgPrefix + storeInfo.payMemberCoverImage : ''" fit="cover" class="store-avatar"> <el-image v-if="storeInfo.payMemberCoverImage" :src="storeInfo.payMemberCoverImage ? storeInfo.imgPrefix + storeInfo.payMemberCoverImage : ''" fit="cover" class="store-avatar"> <div slot="error" class="image-slot"> <i class="el-icon-picture-outline"></i> </div> </el-image> <img v-if="! storeInfo.payMemberCoverImage" src="@/assets/avatar/man.png" fit="cover" class="store-avatar" /> </div> <div class="store-header-right"> <div class="store-name">{{ storeInfo.name }}</div> @@ -140,19 +141,19 @@ <div class="image-section"> <div class="image-item"> <span class="label">æ³äººèº«ä»½è¯æ£é¢ï¼</span> <el-image :src="storeInfo.idcardImg" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImg]"> <el-image :src="storeInfo.idcardImgUrl" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImgUrl]"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> <div class="image-item"> <span class="label">æ³äººèº«ä»½è¯åé¢ï¼</span> <el-image :src="storeInfo.idcardImgBack" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImgBack]"> <el-image :src="storeInfo.idcardImgBackUrl" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImgBackUrl]"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> <div class="image-item"> <span class="label">è¥ä¸æ§ç §ï¼</span> <el-image :src="storeInfo.businessImg" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.businessImg]"> <el-image :src="storeInfo.businessImgUrl" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.businessImgUrl]"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -167,14 +168,14 @@ </div> <div class="image-item-row"> <span class="label">身份è¯åé¢ï¼</span> <el-image :src="storeInfo.idcardImgBack" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImgBack]"> <el-image :src="storeInfo.idcardImgBackUrl" fit="cover" class="qualification-image" :preview-src-list="[storeInfo.idcardImgBackUrl]"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> <div class="image-item-row"> <span class="label">ææå³å¨ååï¼</span> <div class="image-list"> <el-image v-for="(img, index) in storeInfo.laborContractImgs" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.laborContractImgs"> <el-image v-for="(img, index) in storeInfo.laborContractImgUrls" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.laborContractImgUrls"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -182,7 +183,7 @@ <div class="image-item-row"> <span class="label">社ä¿ç¼´çº³è¯æï¼</span> <div class="image-list"> <el-image v-for="(img, index) in storeInfo.socialSecurityImgs" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.socialSecurityImgs"> <el-image v-for="(img, index) in storeInfo.socialSecurityImgUrls" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.socialSecurityImgUrls"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -195,7 +196,7 @@ <div class="image-item-row"> <span class="label">é¨åºé¨å¤´ç §ï¼</span> <div class="image-list"> <el-image v-for="(img, index) in storeInfo.storeFrontImgs" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.storeFrontImgs"> <el-image v-for="(img, index) in storeInfo.storeFrontImgUrls" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.storeFrontImgUrls"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -203,7 +204,7 @@ <div class="image-item-row"> <span class="label">é¨åºå é¨ç §çï¼</span> <div class="image-list"> <el-image v-for="(img, index) in storeInfo.storeInteriorImgs" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.storeInteriorImgs"> <el-image v-for="(img, index) in storeInfo.storeInteriorImgUrls" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.storeInteriorImgUrls"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -211,7 +212,7 @@ <div class="image-item-row"> <span class="label">å ¶å®ææï¼</span> <div class="image-list"> <el-image v-for="(img, index) in storeInfo.otherMaterialImgs" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.otherMaterialImgs"> <el-image v-for="(img, index) in storeInfo.otherMaterialImgUrls" :key="index" :src="img" fit="cover" class="qualification-image" :preview-src-list="storeInfo.otherMaterialImgUrls"> <div slot="error" class="image-slot"><i class="el-icon-picture-outline"></i></div> </el-image> </div> @@ -494,4 +495,4 @@ color: #909399; font-size: 20px; } </style> </style> admin/src/components/common/Menu.vue
@@ -2,7 +2,7 @@ <div class="menu" :class="{collapse: menuData.collapse}"> <div class="logo"> <div><img src="@/assets/logo.png"></div> <h1 :class="{hidden: menuData.collapse}">è¿å¿«åå°ç®¡çç³»ç»</h1> <h1 :class="{hidden: menuData.collapse}">é«éç«è¡æå¯å管çç³»ç»</h1> </div> <scrollbar> <el-menu admin/src/views/business/area.vue
@@ -24,11 +24,11 @@ </el-table-column> <el-table-column prop="createDate" label="å建æ¶é´" align="center" min-width="140px"></el-table-column> <el-table-column prop="sortnum" label="æåº" align="center" min-width="140px"></el-table-column> <el-table-column label="ç¶æ" align="center" min-width="140px"> <el-table-column label="å¼éç¶æ" align="center" min-width="140px"> <template slot-scope="{ row }"> <el-switch <el-switch v-if="row.type==1" v-model="row.status" active-color="#13ce66" active-color="green" inactive-color="#ff4949" active-value="1" inactive-value="0"> @@ -39,15 +39,19 @@ v-if="containPermissions(['business:areas:update'])" label="æä½" align="center" min-width="80" min-width="180" > <template slot-scope="{ row }"> <el-button type="text" @click="openPriceRule(row)" v-if="row.type === 1">计价è§å</el-button> <el-button type="text" @click="edit(row)" v-permissions="['business:areas:update']">ç¼è¾</el-button> <el-button v-if="row.type!=2" type="text" @click="createChild(row)" v-permissions="['business:areas:create']">æ°å»º{{ row.type==0 ? 'å¸' : 'åºå¿' }}</el-button> <el-button type="text" style="color: red;" @click="deleteById(row)" v-permissions="['business:areas:delete']">å é¤</el-button> </template> </el-table-column> </el-table> </template> <OperaCityPriceRuleWindow ref="operaCityPriceRuleWindow" @success="handlePriceRuleSuccess"/> <OperaAreasWindow ref="operaAreasWindow" @success="update"/> </TableLayout> </template> @@ -57,10 +61,11 @@ import Pagination from '@/components/common/Pagination' import { listByParentId } from '@/api/business/areas' import OperaCityPriceRuleWindow from '@/components/business/OperaCityPriceRuleWindow' import OperaAreasWindow from '@/components/business/OperaAreasWindow' export default { name: 'Areas', extends: BaseTable, components: { TableLayout, Pagination, OperaCityPriceRuleWindow }, components: { TableLayout, Pagination, OperaAreasWindow, OperaCityPriceRuleWindow }, data () { return { // æç´¢ @@ -96,18 +101,18 @@ this.isWorking.search = false }) }, dataAddBool(array) { dataAddBool (array) { array.forEach(item => { item.hasChildren = item.type != 2 // item.childList = item.childList && this.dataAddBool(item.childList) }) return array }, load(tree, treeNode, resolve) { load (tree, treeNode, resolve) { this.treeMaps.set(tree.id, { tree, treeNode, resolve }) listByParentId({ parentId: tree.id, type: tree.type + 1 }) .then(data => { resolve(this.dataAddBool(data||[])) resolve(this.dataAddBool(data || [])) }) .catch(e => { this.$tip.apiFailed(e) @@ -116,7 +121,7 @@ this.isWorking.search = false }) }, refreshLoadTree(parentId) { refreshLoadTree (parentId) { if (this.treeMaps.get(parentId)) { const { tree, treeNode, resolve } = this.treeMaps.get(parentId) this.$set(this.$refs.table.store.states.lazyTreeNodeMap, parentId, []) @@ -131,14 +136,21 @@ this.handlePageChange() } }, update(parentId) { update (parentId) { this.refreshLoadTree(parentId) }, openPriceRule(row) { this.$refs.operaCityPriceRuleWindow.open('计价è§å', row.id) openPriceRule (row) { this.$refs.operaCityPriceRuleWindow.open('计价è§å(' + (row.name || '') + ')', row.id) }, handlePriceRuleSuccess() { handlePriceRuleSuccess () { this.$message.success('ä¿åæå') }, edit (row) { // this.parentId = row.type==0 ? null : row.type==1 ? 'ç¼è¾å¸' : 'ç¼è¾åºå¿' this.$refs.operaAreasWindow.open(row.type == 0 ? 'ç¼è¾ç' : row.type == 1 ? 'ç¼è¾å¸' : 'ç¼è¾åºå¿', row) }, createChild (row) { this.$refs.operaAreasWindow.open(row.type == 0 ? 'æ°å»ºå¸' : 'æ°å»ºå¿åº', { parentId: row.id, name: '', type: row.type === 1 ? 2 : 1 }) } } } admin/src/views/business/storeList.vue
@@ -19,8 +19,8 @@ <el-form-item label="èç³»çµè¯" prop="linkPhone"> <el-input v-model="searchForm.linkPhone" clearable placeholder="请è¾å ¥èç³»çµè¯" @keypress.enter.native="search"></el-input> </el-form-item> <el-form-item label="æ³¨åæ¶é´" prop="createTime"> <el-date-picker type="daterange" v-model="searchForm.createTime" clearable value-format="yyyy-MM-dd" <el-form-item label="æ³¨åæ¶é´" prop="createTimeStr"> <el-date-picker type="daterange" v-model="searchForm.createTimeStr" clearable value-format="yyyy-MM-dd" range-separator="-" start-placeholder="å¼å§æ¥æ" end-placeholder="ç»ææ¥æ" @change="handleDateChange" /> </el-form-item> <el-form-item label="ç¶æ" prop="auditStatus"> @@ -105,10 +105,10 @@ address: '', linkName: '', linkPhone: '', createTime: '', createTimeStr: '', createStartTime: '', createEndTime: '', auditStatus: 3 auditStatus: null } } }, @@ -129,9 +129,9 @@ address: '', linkName: '', linkPhone: '', createTime: '', createTimeStr: '', status: '', auditStatus: 3 auditStatus: null } this.search() }, @@ -181,4 +181,4 @@ text-decoration: underline; cursor: pointer; } </style> </style> admin/src/views/index.vue
@@ -3,7 +3,7 @@ <div class="home_header"> <div class="mb10 fs17">ä¸å好ï¼{{ userInfo.realname }}</div> <div class="fs13"> ä»å¤©æ¯ {{ nowDate }} {{ nowWeek }}ï¼æ¬¢è¿è®¿é®è¿å¿«åå°ç®¡çç³»ç» ä»å¤©æ¯ {{ nowDate }} {{ nowWeek }}ï¼æ¬¢è¿è®¿é®é«éç«è¡æå¯å管çç³»ç» </div> </div> </div> admin/src/views/login.vue
@@ -1,7 +1,7 @@ <template> <div class="wrap"> <div class="introduce"> <h2>è¿å¿«åå°ç®¡çç³»ç»</h2> <h2>é«éç«è¡æå¯å管çç³»ç»</h2> <h3></h3> </div> <div class="login"> server/pom.xml
@@ -109,6 +109,12 @@ <groupId>com.huaweicloud</groupId> <artifactId>esdk-obs-java</artifactId> <version>3.19.7</version> <exclusions> <exclusion> <artifactId>okhttp</artifactId> <groupId>com.squareup.okhttp3</groupId> </exclusion> </exclusions> </dependency> <!-- è¿æ¥æ± --> @@ -238,6 +244,12 @@ <groupId>com.github.wechatpay-apiv3</groupId> <artifactId>wechatpay-java</artifactId> <version>0.2.15</version> <exclusions> <exclusion> <artifactId>okhttp</artifactId> <groupId>com.squareup.okhttp3</groupId> </exclusion> </exclusions> </dependency> <!-- é¿éäºOSS--> server/services/pom.xml
@@ -16,5 +16,18 @@ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <dependency> <groupId>com.alipay.sdk</groupId> <artifactId>alipay-sdk-java-v3</artifactId> <version>3.1.70.ALL</version> </dependency> <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>4.9.3</version> <scope>compile</scope> </dependency> </dependencies> </project> server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,98 @@ package com.doumee.config.alipay; import com.alipay.v3.ApiException; import com.alipay.v3.ApiClient; import com.alipay.v3.util.model.AlipayConfig; import com.alipay.v3.Configuration; import com.alipay.v3.api.AlipayFundTransUniApi; import com.alipay.v3.model.*; import java.util.ArrayList; import java.util.List; public class AlipayFundTransUniTransfer { public static void main(String[] args) throws ApiException { // åå§åSDK ApiClient defaultClient = Configuration.getDefaultApiClient(); // åå§åalipayåæ°ï¼å ¨å±è®¾ç½®ä¸æ¬¡ï¼ defaultClient.setAlipayConfig(getAlipayConfig()); // æé 请æ±åæ°ä»¥è°ç¨æ¥å£ AlipayFundTransUniApi api = new AlipayFundTransUniApi(); AlipayFundTransUniTransferModel data = new AlipayFundTransUniTransferModel(); // 设置åå®¶ä¾§å¯ä¸è®¢åå· data.setOutBizNo("202606300001"); // è®¾ç½®è®¢åæ»éé¢ data.setTransAmount("1"); // 设置æè¿°ç¹å®çä¸å¡åºæ¯ data.setBizScene("DIRECT_TRANSFER"); // 设置ä¸å¡äº§åç data.setProductCode("TRANS_ACCOUNT_NO_PWD"); // 设置转账ä¸å¡çæ é¢ data.setOrderTitle("201905代å"); // è®¾ç½®åæ¯ä»å®ä¸å¡åå· data.setOriginalOrderId("20190620110075000006640000063056"); // è®¾ç½®æ¶æ¬¾æ¹ä¿¡æ¯ Participant payeeInfo = new Participant(); payeeInfo.setIdentity("15345690849"); payeeInfo.setName("æ±è"); payeeInfo.setIdentityType("ALIPAY_LOGON_ID"); data.setPayeeInfo(payeeInfo); // 设置ä¸å¡å¤æ³¨ data.setRemark("201905代å"); // è®¾ç½®è½¬è´¦åºæ¯åç§° data.setTransferSceneName("ä½£éæ¥é ¬"); // è®¾ç½®è½¬è´¦åºæ¯ä¸æ¥ä¿¡æ¯ List<TransferSceneReportInfo> transferSceneReportInfos = new ArrayList<TransferSceneReportInfo>(); TransferSceneReportInfo transferSceneReportInfos0 = new TransferSceneReportInfo(); transferSceneReportInfos0.setInfoType("ä½£éæ¥é ¬è¯´æ"); transferSceneReportInfos0.setInfoContent("3æå®¶æ¿æå¡æ¥é ¬"); transferSceneReportInfos.add(transferSceneReportInfos0); data.setTransferSceneReportInfos(transferSceneReportInfos); // 设置转账ä¸å¡è¯·æ±çæ©å±åæ° data.setBusinessParams("{\"payer_show_name_use_alias\":\"true\"}"); /* // 设置ç¾åä¿¡æ¯ SignData signData = new SignData(); signData.setOriSign("EqHFP0z4a9iaQ1ep=="); signData.setPartnerId("ç¾åè¢«æææ¹æ¯ä»å®è´¦å·ID"); signData.setOriAppId("2021000185629012"); signData.setOriOutBizNo("åæ·è®¢åå·"); signData.setOriSignType("RSA2"); signData.setOriCharSet("UTF-8"); data.setSignData(signData); */ try { AlipayFundTransUniTransferResponseModel response = api.transfer(data); } catch (ApiException e) { AlipayFundTransUniTransferDefaultResponse errorObject = (AlipayFundTransUniTransferDefaultResponse) e.getErrorObject(); System.out.println("è°ç¨å¤±è´¥:" + errorObject); } } private static AlipayConfig getAlipayConfig() { AlipayConfig alipayConfig = new AlipayConfig(); alipayConfig.setServerUrl("https://openapi.alipay.com"); alipayConfig.setAppId("2021006147660139"); String privateKey = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDEeqqkZztBHfK+vpyBi6ejgDTHZuZ3yiuXds+lRBbMo/g24F5trH+oLHW0gMhSxihFfQBBIpVBXDsPQK4ZkhDWTaOBktnU1UMRoOEiaaZU6EiWy10ePFUmpdXpkCQEp7rc88OwI90p58S3+L+Ckak60WqNwJBdB5YGBaUunryBA78U4zW1KNY7JvoRnZDcFMQiczikwUzhO7EAi0yVrVpsVsc9s87mcS4uOJKx4qb2E83r9RJ1z30db+cIIZRiLP2oNZBLYzgKpOouE+uIgxhQzlh6cOASNZQulXuUjoT/+Y9w4njfl4TmKIXWcJFKIMc6kMiux9tTncpp0TqRwk1tAgMBAAECggEALkSYtJheusnbpRFr95G0i2sggqh3s1PXihZ/dXKgT9Z5GCsj8X3Cng7CNRxykBN73kk+axhCv56Bhej8Vqcv8ddcnqG/TEBgR+Fzws/QTIRau6/uILWic7RvuE2qPbJl7aw1s9/uL/UVPSGFr7CvgltYVUM4e7/Sk1529JCK4XJfoXP5tKJ3OaXssvaFnCKEU8IGQkjRG+lUZJhAHVtClGHtgrhevgRhy2zre5wp2qSa8d/MqrPruSYS02hn9b5Nl6i2PlUS6dGlJ4lrxYTG22ukYYoxAPNPS7gnvmveXonWP7b5tPhKRpZjnoySojz3WECUlhz/v8wM1cDrpq+GQQKBgQDsc7y2rlx4f77a7ORfb5/qWHCOJs1cIzggj0kJ7TgFGe71kbCQ5nywD/Fe5V9OwbW+DCxOME+SrrHeiK4axWiu5si/1JlurJoxNy+4k4ywk3ZA3Nv2aBhlPqfkwDhJ0z7Mgsq2c/YgnVddmSvKZoC39wA77ovks4GDxaBOt8N7PQKBgQDUuPGgzkwcgb60UdaxfMbacrPsW26vDxaE4ceuXo2m8KDiCIqkF2y9r6AdWMTgGGSJwOsk7+FP+21VdRivCg9HcOLWngveUc6xDIuqKHVpemMo3SdCF4Wqf96rRc3VOBr5cfIdWxeorZf5umMyKnIAjAFETOOrK7eLTTmjyLD98QKBgB82S+Plcklpu3zUpnS+nGJn2Du7fYI7F+6cW2zXBn0N5lA+Mgt+kVkAUcFQD9uqkF4M51BO6kIXk10nt6vLAT2NM1S3MKW+XQBAI6l+uKSaYpK/VL3bEdVThwAYK5X7L5/5Z97bwdKeUmkFjhVCoJ0oGrzOiWLgGymUzct2UHSVAoGBAMb+7Cs+Ub0pMrmFBY6r52pbey1Uq0pglvRgMmhQU7sjx50r2GaA81zPer15WVM5/nNPYaoALYqg7jrPe/PjOT/fvpR+7SNg7DZ8QftANfYiY7jKifst/gDt9ePLPS6FedZ4XcJQgOVu34jicAFx64vPbS/zrddm4iEScSVijRBBAoGAXCheERsx8+n16Us/DttXFUa1nc7+D8WR6buM1QMZgQCVF2qp3XtM+FusCKL4+q1+dtag8svLjJFp9QbaAXqX8Zk7rn8wUHbDloPTPy9XWgrPowyL9MPU+e/Rq8Hr6TWPDBd4TU64YzIEfBQYpJXfZbXhVYmK3o7xHXKB1x4vvEM="; alipayConfig.setPrivateKey(privateKey); alipayConfig.setAppCertPath("pay/pro/appCertPublicKey.crt"); alipayConfig.setAlipayPublicCertPath("pay/pro/alipayCertPublicKey_RSA2.crt"); alipayConfig.setRootCertPath("pay/pro/alipayRootCert.crt"); return alipayConfig; } } server/services/src/main/resources/application-dev.yml
@@ -90,6 +90,13 @@ notifyUrl: https://test.doumee.cn/dmmall_web_api/web/api/wxPayNotify keyPath: D:\DouMee\dmkjWxcert\apiclient_cert.p12 alipay: pay: appId: 2021006146614417 privateKey: MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC0zIy4Ej8yG34uQ8zECWu12INdTWYuvSudhrf1qtUrPx4FO9vDGc8NdPz63M3y+akWh9o8gsl7qQqOoB7o8gYebLTzF2ZP3ByxgkNRGUwZBIi0iL/28eq/2uDCWnqNBDEeFQpfWeRcErC28LCB6JSI7F6owH78LiU8pNO0pVvqwvcLovlVee4UDtLThBegUxkkHXq4EM9yutkfps1ruDiTGFYyTjS8g9BmNJ7rJoRSKTE85Gl8OYp1SuFbyurPEaFLBW9yGHbsqMqegys2PwV6PxZq3WBbFMiuWI5fane+VL2jyVoV36CYPS2GFjq0stuUHZvPL1uYk+bwAAei7a2JAgMBAAECggEBAJMnTX1gNJl28Qt82YPRWx6F292r6nguNfqftMi6Q4hQdgGyh5rTPcfpKSKRZvrVIz+YURMhLBZ/Ln2Ja78ThdFrjxewOvDS6XO830d5vIs8OnweNYgrvHJtFrR5afeuqr+eRnP3OTuLZtNvMWp6v7J2GFFnY7OjZ2Flkn4cfKSkqnLQnZ/oDKA/a40OclHRmaQZcS5YkGZqeR+NssanUDad89IVz7NU0kXTbaXjbGHyJscLr6hM3otdfrYsboJ5XHLOnnpSLptv3I0HSUeHBSdhAbP5Hlot+xOo6EbeougefmT2FZWaDA+kPHgajCOdZHW3v+13Xp+PioRW0IPcsLUCgYEA+11Fqm+tpP351tdkJyW+weTy0/OnvUuSVQP/0/kvzQ84kjfkxdoyTKe6kT8+K5b5dkCQhGRfWgb7/amKEe1loCQsujf7/6aebUgTevrOs96LErMT1fCqId1t/MWgXVFpzo8n2OTks2r0nleHY7C9VZiPIbGBQDbkJChIFRAiRXsCgYEAuCIg2p4RrlOG/i4/r1xKmOIwba9snTBnAB8/bri913xMy055OVF6P46hC6d/J25QNqYGODBBF4kmiBuco+vtuz6C94Uo3h/oYD3jetmwlAnRWjEl9Z3Pkf5cbE+o5KBZmUa+M7BTrBDutzdRDqX2SANvnoDWVF03teY9lcVNL8sCgYEAoFdeEhtNC/tKfKZG58XnCe4Oi+9YJ6LmRD7Z2RCSUl8MOhFXaHIINeekVfSeptWWab1DsoAIZvgflC6quUbS1bVdpqgBopFZa+JXMtJ8OjaSRipfU9BB5npGJ8C0y/Ib6TxeMbfIvz5RrhOtdIUQMWKwotCE3z5khz/+wxjYk7MCgYBrMesgeo9ehl/7T99hboA7GssIv+yiYhBEoOxjwAc9EK8AWNH3zXg20gjtaPh8cxsdhW/vfCAY3I5jBHgfcfU3YcAK6ymMjtTQWpc46MyEkmafdCdeIx45JvSVVZbEaplewzFtlARSEpV2ciytM276I43yn5ynBpGtQrmtnGxAGwKBgQCy8imu84IhC+BivLRYdsQ+hMsqs0nih4wfVPKWr6K64QO6CZ4riL76lppH8UBG5EXtRd6cjBbORgvQtr22OJxFcj8WuZjBvYvvCOsTE0jGMdiyBqx9k0PsLrtlVZPFP4kj9vDSFNIyAgIOiAmYY4kBtGfhQqRcDgZK+mgHY0zMbg== appCertPath: foo/dev/appCertPublicKey_2021006146614417.crt alipayPublicCertPath: foo/dev/alipayCertPublicKey_RSA2.crt rootCertPath: foo/dev/alipayRootCert.crt upload: type: ftp server/services/src/main/resources/application-pro.yml
@@ -87,6 +87,14 @@ # mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM typeId: jinkuai alipay: pay: appId: 2021006146626440 privateKey: MIIEvwIBADANBgkqhkiG9w0BAQEFAASCBKkwggSlAgEAAoIBAQC0zIy4Ej8yG34uQ8zECWu12INdTWYuvSudhrf1qtUrPx4FO9vDGc8NdPz63M3y+akWh9o8gsl7qQqOoB7o8gYebLTzF2ZP3ByxgkNRGUwZBIi0iL/28eq/2uDCWnqNBDEeFQpfWeRcErC28LCB6JSI7F6owH78LiU8pNO0pVvqwvcLovlVee4UDtLThBegUxkkHXq4EM9yutkfps1ruDiTGFYyTjS8g9BmNJ7rJoRSKTE85Gl8OYp1SuFbyurPEaFLBW9yGHbsqMqegys2PwV6PxZq3WBbFMiuWI5fane+VL2jyVoV36CYPS2GFjq0stuUHZvPL1uYk+bwAAei7a2JAgMBAAECggEBAJMnTX1gNJl28Qt82YPRWx6F292r6nguNfqftMi6Q4hQdgGyh5rTPcfpKSKRZvrVIz+YURMhLBZ/Ln2Ja78ThdFrjxewOvDS6XO830d5vIs8OnweNYgrvHJtFrR5afeuqr+eRnP3OTuLZtNvMWp6v7J2GFFnY7OjZ2Flkn4cfKSkqnLQnZ/oDKA/a40OclHRmaQZcS5YkGZqeR+NssanUDad89IVz7NU0kXTbaXjbGHyJscLr6hM3otdfrYsboJ5XHLOnnpSLptv3I0HSUeHBSdhAbP5Hlot+xOo6EbeougefmT2FZWaDA+kPHgajCOdZHW3v+13Xp+PioRW0IPcsLUCgYEA+11Fqm+tpP351tdkJyW+weTy0/OnvUuSVQP/0/kvzQ84kjfkxdoyTKe6kT8+K5b5dkCQhGRfWgb7/amKEe1loCQsujf7/6aebUgTevrOs96LErMT1fCqId1t/MWgXVFpzo8n2OTks2r0nleHY7C9VZiPIbGBQDbkJChIFRAiRXsCgYEAuCIg2p4RrlOG/i4/r1xKmOIwba9snTBnAB8/bri913xMy055OVF6P46hC6d/J25QNqYGODBBF4kmiBuco+vtuz6C94Uo3h/oYD3jetmwlAnRWjEl9Z3Pkf5cbE+o5KBZmUa+M7BTrBDutzdRDqX2SANvnoDWVF03teY9lcVNL8sCgYEAoFdeEhtNC/tKfKZG58XnCe4Oi+9YJ6LmRD7Z2RCSUl8MOhFXaHIINeekVfSeptWWab1DsoAIZvgflC6quUbS1bVdpqgBopFZa+JXMtJ8OjaSRipfU9BB5npGJ8C0y/Ib6TxeMbfIvz5RrhOtdIUQMWKwotCE3z5khz/+wxjYk7MCgYBrMesgeo9ehl/7T99hboA7GssIv+yiYhBEoOxjwAc9EK8AWNH3zXg20gjtaPh8cxsdhW/vfCAY3I5jBHgfcfU3YcAK6ymMjtTQWpc46MyEkmafdCdeIx45JvSVVZbEaplewzFtlARSEpV2ciytM276I43yn5ynBpGtQrmtnGxAGwKBgQCy8imu84IhC+BivLRYdsQ+hMsqs0nih4wfVPKWr6K64QO6CZ4riL76lppH8UBG5EXtRd6cjBbORgvQtr22OJxFcj8WuZjBvYvvCOsTE0jGMdiyBqx9k0PsLrtlVZPFP4kj9vDSFNIyAgIOiAmYY4kBtGfhQqRcDgZK+mgHY0zMbg== appCertPath: foo/pro/appCertPublicKey_2021006146626440.crt alipayPublicCertPath: pro/dev/alipayCertPublicKey_RSA2.crt rootCertPath: foo/pro/alipayRootCert.crt upload: type: blob server/services/src/main/resources/pay/dev/alipayCertPublicKey_RSA2.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,43 @@ -----BEGIN CERTIFICATE----- MIIDrDCCApSgAwIBAgIQICISASIC55YgBM9xBrmsMzANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDIgUjEwHhcNMjIxMjAxMDYwMjQ2WhcNMjcxMTMwMDYwMjQ2WjCBjDELMAkGA1UEBhMCQ04x JzAlBgNVBAoMHuWuieW+veixhuexs+enkeaKgOaciemZkOWFrOWPuDEPMA0GA1UECwwGQWxpcGF5 MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWFrOWPuC0yMDg4 NzExNjcwMDEzMTUyMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApzHt3lqQTE0xf6hb 9cfa5YXfBFuMvRJUd0pecfGGh24V0XtKM9QKHncrGZ98nWLpMf7/ulXFIId3EeHHg9oAEDviuCMJ tWDjmxfJLvIjxgDI7EZ4hJgzInZsFh9hE4swbUjy2IK3LGrSV3BbEq5M6I+F++4HkTGIZ3EOqloF T47BCbdPywt+42+tes5fnTk/13gjXpqbCeBKKvtNOF6EqHR6EE6s8wCc1E2Ux37X3gnajy1lBB2J aDwoeAmlblUodx7LIfq3djGoBn0Q3jx9k3mgK47E9pyx7Ryx0/4qY1ez2XH9BpSZfT8PWswdpths qkWCcQo3vD1n8DKXX5BOtQIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZIhvcNAQELBQAD ggEBACxGAwJpbwl45HKB4fJxX7RX1YQB9XZ2h0s0Jmr1eTJ3UGulF4jRaHVX+O+rxR2Iqg0BD8ff w6n8SLA42yFb3jBvy3wDy+L0a1uZL6E10S4WBDcEQGdCCKWx0qgAXsihMByA62nDsZgKDNVZCsU/ Bn8/hRYkKee8gnHkFzfEVc2mTiF3Uc7gSJpuLyBQFE1c/P+zdPfynHmP3eGQl5iJWxVeDmcqDJbc aKtAELSkQFXmWMz9YbHl1a0eQuQnQ8KzZMdDdqdWn7RqGrva5x/fdyGfFlQCwi57dbu1QGthLtC7 Zidk8CRb77CzpuuvIBoaPMLY/nalAu2BoZwEQLsUUb4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw 7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+ 14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64 fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6 OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr -----END CERTIFICATE----- server/services/src/main/resources/pay/dev/alipayRootCert.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,88 @@ -----BEGIN CERTIFICATE----- MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b 53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI pDoiVhsLwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0 MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2 xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6 vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1 Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98 SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe 9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90 tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3 IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW 05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41 T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N 1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02 77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi kT9qhqn+lw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0 WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ 4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2 zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5 4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3 U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU 1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX Yf4Zr0fJsGuv -----END CERTIFICATE----- server/services/src/main/resources/pay/dev/appCertPublicKey.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ -----BEGIN CERTIFICATE----- MIIEmzCCA4OgAwIBAgIQICYEE4rIKdwnEYn5Mj4gFTANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDEgUjEwHhcNMjYwNDEzMDMzMDMyWhcNMzEwNDEyMDMzMDMyWjBiMQswCQYDVQQGEwJDTjEn MCUGA1UECgwe5a6J5b696LGG57Gz56eR5oqA5pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQLDAZBbGlwYXkx GTAXBgNVBAMMEDIwODg3MTE2NzAwMTMxNTIwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIB AQChOOLkw1vj7+VuSO/VbgYmcuJeDkmYCeuiwL+Am8XnOp+HR5Z0GpsRxYwq1EfmSSRd5P7T9vm2 Hub8xJCh13hc2Rn3UBGK8yOB2fIHTGZ2jJU31qKblA+T04CljdiJT4doqXkK2R/nTqM6hpH8x9Ub VqwdLcwZmPKUTIK7RpyfqQZUssuNfeezRVc9HR/sYOCsLyKEz1yJrEp77CQjDsvv188S/IiLtik4 IfqcqrAmIv5sje7hjOT3nXljMprZX3w9qHvukdqZrTRG+lXGEHs+kmzW6W5DqmDoSJNHkDD8ghiz zyup9k0+BF+nLBf2mqSh5BpYUUadDQV3BCBfTBpbAgMBAAGjggEqMIIBJjAfBgNVHSMEGDAWgBRx B+IEYRbk5fJl6zEPyeD0PJrVkTAdBgNVHQ4EFgQUVJjFoF6M2aZVqGYdvCiymCLmy9IwQAYDVR0g BDkwNzA1BgdggRwBbgEBMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9jYS5hbGlwYXkuY29tL2Nwcy5w ZGYwDgYDVR0PAQH/BAQDAgbAMDAGA1UdHwQpMCcwJaAjoCGGH2h0dHA6Ly9jYS5hbGlwYXkuY29t L2NybDExMi5jcmwwYAYIKwYBBQUHAQEEVDBSMCgGCCsGAQUFBzAChhxodHRwOi8vY2EuYWxpcGF5 LmNvbS9jYTYuY2VyMCYGCCsGAQUFBzABhhpodHRwOi8vY2EuYWxpcGF5LmNvbTo4MzQwLzANBgkq hkiG9w0BAQsFAAOCAQEAjNgUoPWi2bKsDSNyr/5Bzm4RjKLtP9xwEHcZyUC1HKq/jLAsiTcu8RAH Ohf+ap9daIo/BSqq1iUah1hMCrKlocc87XnlMGt6xMUDBD3v9L6MTSAApdTRHt1jJL0i4kxiLR6+ xoCliuus53wcIY1z1sQQQMUZHdn+TW/En67NogZxi5Cqm6GvifSWDtHjmXKhK6SQf7epiTVRSEQk VKrvl/IfBJS3nmSsEWPhZ9mg56kf4RhcYowZ+B/CTdWFyrM92+FVIQSGrP8GOn5TF658sxpA+MAd eU0egli8augOoSkkRGXSXgsdeEiUXRoeH9NoeD14yTGrX23XreXAAqeFMA== -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/alipayCertPublicKey_RSA2.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,43 @@ -----BEGIN CERTIFICATE----- MIIDtTCCAp2gAwIBAgIQICYEF5ifP33hncf84RFzuTANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDIgUjEwHhcNMjYwNDE3MDk1MDQyWhcNMzEwNDE2MDk1MDQyWjCBlTELMAkGA1UEBhMCQ04x MDAuBgNVBAoMJ+WQiOiCpeW4guayg+ihjOW5v+WRiuiuvuiuoeaciemZkOWFrOWPuDEPMA0GA1UE CwwGQWxpcGF5MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWF rOWPuC0yMDg4NDgwNTQ1NDIyOTM0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArzsq W6MYdiTCnbw73gVRDRUatIEgxWrAMdyW2r5Rz/+zUMUbFF8hG6Kpr13wGCRXM4kRH5EgXNtfgKL7 MIAYQgth+d3qnI7+d44nhhE2+ynjIDsWdHjaOLrs0k3Uq4Ps6Cykd/LfCb7M7fmu0+pIG08agU/B 65otxoRzLKggcihA75Y/bYo8OuaoTQ/TY19ErMiq3nbcJBegdOlazkF/RuKHHXa9k3GE8husftJv 0StSKLtMxVmJhkal2ot0G7GiK8FTdUEDegws4RIMLS21NVJR912q71vom8pjNmR6d2ehNiwp6/ln 7+HvJmEVagoIfMulZm00aTKQAg3NrXtaZQIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZI hvcNAQELBQADggEBAE2X+j0jo6nyjndfQzu/R6D8onz6WNwVZ6VR4w6E6WoXC+zqbsCSs8/XIkub 20Yoe+W/PGS/GeCMwl9g/ldhlqIpBWbIGhO/plnLGDlRgMekXeiQ5u1W3whjcSHPWcjsZAYQ8BNp lVAprR31u8x3ROhU1MbzO3r2vq+EABZRqhjoeSZKTo+wWtwii9UI/5HzFEOV89ukRo0C7Q/9p+C9 MBsJ1w3tpyVUZNEM8RK9NqYWynk1nyPMdKiwdyBnJ+aZjK1Bj/bpy+GrxIbU8lvnurvjwqofj52T k/Dj987VCLKZ0NvgH90xg9IU88geJ2Fyz8EaRdZqJBHgpJ6uC/IZmF4= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw 7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+ 14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64 fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6 OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/alipayCertPublicKey_RSA2_app.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,43 @@ -----BEGIN CERTIFICATE----- MIIDrzCCApegAwIBAgIQICYEE1ScS4wOCuzLeF4hITANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDIgUjEwHhcNMjYwNDEzMDkwMTA0WhcNMzEwNDEyMDkwMTA0WjCBjzELMAkGA1UEBhMCQ04x KjAoBgNVBAoMIeWNl+S6rOS4ieWPqum5pOenkeaKgOaciemZkOWFrOWPuDEPMA0GA1UECwwGQWxp cGF5MUMwQQYDVQQDDDrmlK/ku5jlrp0o5Lit5Zu9Kee9kee7nOaKgOacr+aciemZkOWFrOWPuC0y MDg4NDgwNDY2ODc5MDcxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAmeEDpqNo/QkK L4Kfy2pBVfhjaYRFgBkdNJaxFi22ErzEaD50u3HZf3SBGoE9H7KTqE00xLVyhQJXmqkWbKTbitiP B4Dilf3k4dnBwkbXa8fahzqIpU39IO2DnUMbwvNEGIt2DpHP6QZw2VoZ8G6ar4pSJE8D8rrBV9sU 7RAF6irup3gf65hVvBT2m3WAJRXg2S79IquUwqEA3WJ2ATbvxg9gA6qK8dpaBn/QlAIclh1TOu/h fFbyFHWWjr7HIF8z0MKnAWSgz+eTdJ+IwwtBB5CP993fHALnW4GPV4KjfKiWYvA2MfY8079iyM44 rXLjvvY4Hil1BhOYFg4sjeXHSQIDAQABoxIwEDAOBgNVHQ8BAf8EBAMCA/gwDQYJKoZIhvcNAQEL BQADggEBAFJVv1b2dniVmghEs7rRoVeRPgi5y+71edMlKxXq1OUVXHIrG4cubweT/2qMYuXnZSBR KeOC5uHLkfENm56uqzNKS2pPrHYtiMko3Zi5XoYg9BpFeL3vNdELhPk4+yZAPUBU1LzVs0I/BHwi bt5FPnrJJYRXxhmXCrDljPRrTrc18SkWRHLCOp2pV4f43Yu+C90Q8gTN+dDMKLk6NeaE50b5fZX4 +LgfynReTfB6SToUUb6AP+RFSRDJn2k5P7kCU1urePzJVQLiPqsnVX+2Lcsn/OADVa4mdGQiu7ql 5j0hdH/b02pRfv37qLKLZJxzig9kSBdwGba/WjWwtBb1fIU= -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIE4jCCAsqgAwIBAgIIYsSr5bKAMl8wDQYJKoZIhvcNAQELBQAwejELMAkGA1UEBhMCQ04xFjAU BgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEw LwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMy MjE0MzQxNVoXDTM3MTEyNjE0MzQxNVowgYIxCzAJBgNVBAYTAkNOMRYwFAYDVQQKDA1BbnQgRmlu YW5jaWFsMSAwHgYDVQQLDBdDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eTE5MDcGA1UEAwwwQW50IEZp bmFuY2lhbCBDZXJ0aWZpY2F0aW9uIEF1dGhvcml0eSBDbGFzcyAyIFIxMIIBIjANBgkqhkiG9w0B AQEFAAOCAQ8AMIIBCgKCAQEAsLMfYaoRoPRbmDcAfXPCmKf43pWRN5yTXa/KJWO0l+mrgQvs89bA NEvbDUxlkGwycwtwi5DgBuBgVhLliXu+R9CYgr2dXs8D8Hx/gsggDcyGPLmVrDOnL+dyeauheARZ fA3du60fwEwwbGcVIpIxPa/4n3IS/ElxQa6DNgqxh8J9Xwh7qMGl0JK9+bALuxf7B541Gr4p0WEN G8fhgjBV4w4ut9eQLOoa1eddOUSZcy46Z7allwowwgt7b5VFfx/P1iKJ3LzBMgkCK7GZ2kiLrL7R iqV+h482J7hkJD+ardoc6LnrHO/hIZymDxok+VH9fVeUdQa29IZKrIDVj65THQIDAQABo2MwYTAf BgNVHSMEGDAWgBRfdLQEwE8HWurlsdsio4dBspzhATAdBgNVHQ4EFgQUSqHkYINtUSAtDPnS8Xoy oP9p7qEwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwDQYJKoZIhvcNAQELBQADggIB AIQ8TzFy4bVIVb8+WhHKCkKNPcJe2EZuIcqvRoi727lZTJOfYy/JzLtckyZYfEI8J0lasZ29wkTt a1IjSo+a6XdhudU4ONVBrL70U8Kzntplw/6TBNbLFpp7taRALjUgbCOk4EoBMbeCL0GiYYsTS0mw 7xdySzmGQku4GTyqutIGPQwKxSj9iSFw1FCZqr4VP4tyXzMUgc52SzagA6i7AyLedd3tbS6lnR5B L+W9Kx9hwT8L7WANAxQzv/jGldeuSLN8bsTxlOYlsdjmIGu/C9OWblPYGpjQQIRyvs4Cc/mNhrh+ 14EQgwuemIIFDLOgcD+iISoN8CqegelNcJndFw1PDN6LkVoiHz9p7jzsge8RKay/QW6C03KNDpWZ EUCgCUdfHfo8xKeR+LL1cfn24HKJmZt8L/aeRZwZ1jwePXFRVtiXELvgJuM/tJDIFj2KD337iV64 fWcKQ/ydDVGqfDZAdcU4hQdsrPWENwPTQPfVPq2NNLMyIH9+WKx9Ed6/WzeZmIy5ZWpX1TtTolo6 OJXQFeItMAjHxW/ZSZTok5IS3FuRhExturaInnzjYpx50a6kS34c5+c8hYq7sAtZ/CNLZmBnBCFD aMQqT8xFZJ5uolUaSeXxg7JFY1QsYp5RKvj4SjFwCGKJ2+hPPe9UyyltxOidNtxjaknOCeBHytOr -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/alipayRootCert.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,88 @@ -----BEGIN CERTIFICATE----- MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b 53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI pDoiVhsLwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0 MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2 xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6 vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1 Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98 SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe 9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90 tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3 IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW 05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41 T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N 1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02 77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi kT9qhqn+lw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0 WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ 4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2 zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5 4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3 U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU 1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX Yf4Zr0fJsGuv -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/alipayRootCert_app.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,88 @@ -----BEGIN CERTIFICATE----- MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b 53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI pDoiVhsLwg== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0 MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2 xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6 vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1 Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98 SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe 9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90 tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3 IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW 05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41 T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N 1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02 77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi kT9qhqn+lw== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0 WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ 4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2 zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA== -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5 4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3 U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU 1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX Yf4Zr0fJsGuv -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/appCertPublicKey.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ -----BEGIN CERTIFICATE----- MIIEpDCCA4ygAwIBAgIQICYEF+z43EnZrxo8n7JK4jANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDEgUjEwHhcNMjYwNDE3MDk1MDQxWhcNMzEwNDE2MDk1MDQxWjBrMQswCQYDVQQGEwJDTjEw MC4GA1UECgwn5ZCI6IKl5biC5rKD6KGM5bm/5ZGK6K6+6K6h5pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQL DAZBbGlwYXkxGTAXBgNVBAMMEDIwODg0ODA1NDU0MjI5MzQwggEiMA0GCSqGSIb3DQEBAQUAA4IB DwAwggEKAoIBAQDEeqqkZztBHfK+vpyBi6ejgDTHZuZ3yiuXds+lRBbMo/g24F5trH+oLHW0gMhS xihFfQBBIpVBXDsPQK4ZkhDWTaOBktnU1UMRoOEiaaZU6EiWy10ePFUmpdXpkCQEp7rc88OwI90p 58S3+L+Ckak60WqNwJBdB5YGBaUunryBA78U4zW1KNY7JvoRnZDcFMQiczikwUzhO7EAi0yVrVps Vsc9s87mcS4uOJKx4qb2E83r9RJ1z30db+cIIZRiLP2oNZBLYzgKpOouE+uIgxhQzlh6cOASNZQu lXuUjoT/+Y9w4njfl4TmKIXWcJFKIMc6kMiux9tTncpp0TqRwk1tAgMBAAGjggEqMIIBJjAfBgNV HSMEGDAWgBRxB+IEYRbk5fJl6zEPyeD0PJrVkTAdBgNVHQ4EFgQUMnQsjdx4hxJTbyuCUODRR4FE LDYwQAYDVR0gBDkwNzA1BgdggRwBbgEBMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9jYS5hbGlwYXku Y29tL2Nwcy5wZGYwDgYDVR0PAQH/BAQDAgbAMDAGA1UdHwQpMCcwJaAjoCGGH2h0dHA6Ly9jYS5h bGlwYXkuY29tL2NybDExMi5jcmwwYAYIKwYBBQUHAQEEVDBSMCgGCCsGAQUFBzAChhxodHRwOi8v Y2EuYWxpcGF5LmNvbS9jYTYuY2VyMCYGCCsGAQUFBzABhhpodHRwOi8vY2EuYWxpcGF5LmNvbTo4 MzQwLzANBgkqhkiG9w0BAQsFAAOCAQEAoXXteUJaBreNwSVlL65ooyV26/V1mGd0XKA7zaMASc5j h7iZYwu09NMgClBt4FVsSWn3ILpjsAfI8K9+8oRmrnLyzzBg2pa8HuomrkWdZDTunA/L0Q1Wyjxm xULd+jIIZkmiwVt454r6eyU110bciw44b+ENN1LbxkHr76RPhE5Lhg+GmBwm2yYmKRKJjFOM86dF OXsvGOA5WstrIjvN+GOAitnC0Z+FN6K5HKz8efyS4FBmLpl0c8tbXbrRXHzDAywYDfyWFFfWEwPY tnInYcheQUo6i08eNqoX9VtOSLTyw1ewHe/HkJgku4j0sGqdYHJIyZ8/sOb1sJynf7dAAw== -----END CERTIFICATE----- server/services/src/main/resources/pay/pro/appCertPublicKey_app.crt
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,23 @@ -----BEGIN CERTIFICATE----- MIIEnjCCA4agAwIBAgIQICYEFIhro8YqnG047eFQ5zANBgkqhkiG9w0BAQsFADCBgjELMAkGA1UE BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmljYXRpb24gQXV0 aG9yaXR5MTkwNwYDVQQDDDBBbnQgRmluYW5jaWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IENs YXNzIDEgUjEwHhcNMjYwNDE0MDYxOTQxWhcNMzEwNDEzMDYxOTQxWjBlMQswCQYDVQQGEwJDTjEq MCgGA1UECgwh5Y2X5Lqs5LiJ5Y+q6bmk56eR5oqA5pyJ6ZmQ5YWs5Y+4MQ8wDQYDVQQLDAZBbGlw YXkxGTAXBgNVBAMMEDIwODg0ODA0NjY4NzkwNzEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK AoIBAQC0zIy4Ej8yG34uQ8zECWu12INdTWYuvSudhrf1qtUrPx4FO9vDGc8NdPz63M3y+akWh9o8 gsl7qQqOoB7o8gYebLTzF2ZP3ByxgkNRGUwZBIi0iL/28eq/2uDCWnqNBDEeFQpfWeRcErC28LCB 6JSI7F6owH78LiU8pNO0pVvqwvcLovlVee4UDtLThBegUxkkHXq4EM9yutkfps1ruDiTGFYyTjS8 g9BmNJ7rJoRSKTE85Gl8OYp1SuFbyurPEaFLBW9yGHbsqMqegys2PwV6PxZq3WBbFMiuWI5fane+ VL2jyVoV36CYPS2GFjq0stuUHZvPL1uYk+bwAAei7a2JAgMBAAGjggEqMIIBJjAfBgNVHSMEGDAW gBRxB+IEYRbk5fJl6zEPyeD0PJrVkTAdBgNVHQ4EFgQUBcq0Xq3VqbLAgkQK9QgdkE7/EF8wQAYD VR0gBDkwNzA1BgdggRwBbgEBMCowKAYIKwYBBQUHAgEWHGh0dHA6Ly9jYS5hbGlwYXkuY29tL2Nw cy5wZGYwDgYDVR0PAQH/BAQDAgbAMDAGA1UdHwQpMCcwJaAjoCGGH2h0dHA6Ly9jYS5hbGlwYXku Y29tL2NybDExMi5jcmwwYAYIKwYBBQUHAQEEVDBSMCgGCCsGAQUFBzAChhxodHRwOi8vY2EuYWxp cGF5LmNvbS9jYTYuY2VyMCYGCCsGAQUFBzABhhpodHRwOi8vY2EuYWxpcGF5LmNvbTo4MzQwLzAN BgkqhkiG9w0BAQsFAAOCAQEAX+69QuOshpcpzuIMVZb4+NzbUiRvGErNn1lGgQkWUFnDgARRHleI pcmJnr1OGs9afnjKyLkmhPcOXYa3KbEn3LcIeJ7b4ltdkawpZdswja1cPBIhXTmAPkCYKyQ8VBHV E8wQr/HsYUeFbv8PzQuQhRJ6Lq9V1zGUCIiLUf/Zs1BdBxj//gagVyapb5IEal3E4mPgVScdLUj0 FNKqS3QPd3EBOusNgnc4OCu3bAf2xpIorUmuCGB97gvHgjXAjkzmRyHcO/u8T0T+V0ZIRLt+sol5 l5CEsypAD4cCPDPKqj5Gx1DmAKVUBr/95H/S/wD6EiuyaR0FcKUt4x0TSojLGQ== -----END CERTIFICATE-----