xiongzhu 4 лет назад
Родитель
Сommit
d885341a0b

+ 20 - 12
src/main/java/com/izouma/nineth/service/GiftOrderService.java

@@ -14,6 +14,7 @@ import com.huifu.adapay.core.exception.BaseAdaPayException;
 import com.huifu.adapay.model.Payment;
 import com.izouma.nineth.config.AdapayProperties;
 import com.izouma.nineth.config.AlipayProperties;
+import com.izouma.nineth.config.GeneralProperties;
 import com.izouma.nineth.config.WxPayProperties;
 import com.izouma.nineth.domain.Asset;
 import com.izouma.nineth.domain.GiftOrder;
@@ -49,17 +50,18 @@ import java.util.Map;
 @AllArgsConstructor
 public class GiftOrderService {
 
-    private AssetRepo        assetRepo;
-    private UserRepo         userRepo;
-    private SysConfigService sysConfigService;
-    private GiftOrderRepo    giftOrderRepo;
-    private AlipayProperties alipayProperties;
-    private AlipayClient     alipayClient;
-    private WxPayProperties  wxPayProperties;
-    private WxPayService     wxPayService;
-    private Environment      env;
-    private AssetService     assetService;
-    private AdapayProperties adapayProperties;
+    private AssetRepo         assetRepo;
+    private UserRepo          userRepo;
+    private SysConfigService  sysConfigService;
+    private GiftOrderRepo     giftOrderRepo;
+    private AlipayProperties  alipayProperties;
+    private AlipayClient      alipayClient;
+    private WxPayProperties   wxPayProperties;
+    private WxPayService      wxPayService;
+    private Environment       env;
+    private AssetService      assetService;
+    private AdapayProperties  adapayProperties;
+    private GeneralProperties generalProperties;
 
     @Transactional
     public GiftOrder gift(Long userId, Long assetId, Long toUserId) {
@@ -112,6 +114,7 @@ public class GiftOrderService {
     public void payOrderAlipay(Long id, Model model) {
         try {
             GiftOrder order = giftOrderRepo.findById(id).orElseThrow(new BusinessException("订单不存在"));
+            Asset asset = assetRepo.findById(order.getAssetId()).orElseThrow(new BusinessException("藏品不存在"));
 
             if (order.getStatus() != OrderStatus.NOT_PAID) {
                 throw new BusinessException("订单状态错误");
@@ -136,7 +139,12 @@ public class GiftOrderService {
             bizContent.put("body", body.toJSONString());
 
             AlipayTradeWapPayRequest alipayRequest = new AlipayTradeWapPayRequest();
-            alipayRequest.setReturnUrl(alipayProperties.getReturnUrl());
+            if (asset.getProjectId() == 1) {
+                alipayRequest.setReturnUrl(generalProperties.getHost() + "/cosmos/home");
+            } else {
+                alipayRequest.setReturnUrl(generalProperties.getHost() + "/9th/home");
+            }
+            alipayRequest.setReturnUrl(generalProperties.getHost() + "/");
             alipayRequest.setNotifyUrl(alipayProperties.getNotifyUrl());
             alipayRequest.setBizContent(JSON.toJSONString(bizContent));
 

+ 1 - 0
src/main/java/com/izouma/nineth/web/OrderController.java

@@ -100,6 +100,7 @@ public class OrderController extends BaseController {
         Order order = orderRepo.findById(id).orElseThrow(new BusinessException("订单不存在"));
         return new HashMap<>() {{
             put("status", order.getStatus());
+            put("projectId", order.getProjectId());
         }};
     }
 

+ 9 - 1
src/main/resources/templates/AlipayHtml.ftlh

@@ -155,7 +155,15 @@
         $.get('/order/${orderId}/status', function (data) {
             console.log(data);
             if (data.status !== 'NOT_PAID') {
-                window.location = '/9th/orderDetail?id=${orderId}';
+                switch (data.projectId) {
+                    case 0:
+                        window.location = '/cosmos/orderDetail?id=${orderId}';
+                        break;
+                    case 1:
+                        window.location = '/9th/orderDetail?id=${orderId}';
+                        break;
+                }
+
             }
         });
     }, 1000);

+ 1 - 1
src/main/vue/src/views/Admin.vue

@@ -27,7 +27,7 @@
                 <div style="flex-grow: 1; margin-left: 20px">
                     <el-select :value="$store.state.projectId" @input="changeProjectId">
                         <el-option :value="0" label="第九空间"></el-option>
-                        <el-option :value="1" label="comos art"></el-option>
+                        <el-option :value="1" label="cosmos art"></el-option>
                     </el-select>
                 </div>
 

+ 0 - 7
src/test/java/com/izouma/nineth/CommonTest.java

@@ -15,8 +15,6 @@ import io.jsonwebtoken.Jwts;
 import io.jsonwebtoken.SignatureAlgorithm;
 import lombok.SneakyThrows;
 import net.coobird.thumbnailator.Thumbnails;
-import org.apache.commons.codec.EncoderException;
-import org.apache.commons.codec.net.URLCodec;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.RandomUtils;
 import org.apache.commons.lang3.Range;
@@ -218,11 +216,6 @@ public class CommonTest {
 
     @Test
     public void resolveUrl() {
-        try {
-            System.out.println(new URLCodec().encode("http://www.baidu.com"));
-        } catch (EncoderException e) {
-            e.printStackTrace();
-        }
     }
 
     @Test