From 34b7a4460540c84cbec2272b97a1e26b84f3b498 Mon Sep 17 00:00:00 2001 From: winter Date: Mon, 6 Nov 2023 23:26:16 +0800 Subject: [PATCH] fix --- .../service/impl/AiVideoServiceImpl.java | 2 +- .../impl/ProductOrderPayServiceImpl.java | 19 +++++++++++------ .../project/service/ProjectService.java | 12 +++++++++-- .../service/impl/CommonProjectService.java | 11 +++++++++- .../service/impl/HBProjectService.java | 11 +++++++++- .../service/impl/HKProjectService.java | 11 +++++++++- .../service/impl/HYProjectService.java | 21 ++++++++++++++++++- .../service/impl/HYuProjectService.java | 11 +++++++++- .../service/impl/ZXProjectService.java | 11 +++++++++- .../sm/impl/UserMouldVideoServiceImpl.java | 5 ++--- 10 files changed, 96 insertions(+), 18 deletions(-) diff --git a/open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java b/open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java index 652a48a..5b74f02 100644 --- a/open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java +++ b/open-api/src/main/java/com/iformall/service/impl/AiVideoServiceImpl.java @@ -44,7 +44,7 @@ public class AiVideoServiceImpl implements AiVideoService { material.setImage(Base64Util.imageUrlToBase64(material.getImage())); } } - + //TODO 本地部署的视频文件怎么处理 AiVideoResult video = AiVideoHelper.createVideo(aiVideoParam); if (video.isSuccess()) { // 记录时长 diff --git a/suimangService/src/main/java/com/iformall/service/impl/ProductOrderPayServiceImpl.java b/suimangService/src/main/java/com/iformall/service/impl/ProductOrderPayServiceImpl.java index 1a1c00f..222b726 100644 --- a/suimangService/src/main/java/com/iformall/service/impl/ProductOrderPayServiceImpl.java +++ b/suimangService/src/main/java/com/iformall/service/impl/ProductOrderPayServiceImpl.java @@ -18,6 +18,7 @@ import com.iformall.service.pay.service.pay.PayAdapterService; import com.iformall.service.pay.service.pay.entity.PayAdapterResult; import com.iformall.service.pay.service.pay.entity.PayQueryAdapterResult; import com.iformall.service.pay.service.refund.RefundPayAdapterService; +import com.iformall.service.project.ProjectFactory; import com.iformall.utils.DateUtils; import com.iformall.utils.RedisLock; import lombok.extern.slf4j.Slf4j; @@ -64,6 +65,9 @@ public class ProductOrderPayServiceImpl implements ProductOrderPayService { @Autowired PayServiceFactory payServiceFactory; + + @Autowired + ProjectFactory projectFactory; @Autowired RedisLock redisLock; @@ -265,12 +269,15 @@ public class ProductOrderPayServiceImpl implements ProductOrderPayService { productOrderMapper.orderPayUpdStatus(order); Product product = productMapper.selectById(order.getProductId()); - if(EnumProductType.product_1.getCode().equals(product.getType())){ - userBasicPropertyService.updUserGlod(order.getUserId(),product.getProjectType(),EnumPropertyLogType.RECHARGE.getCode(), - order.getId(),product.getGlod(),now); - }else if(EnumProductType.product_2.getCode().equals(product.getType())){ - //todo 处理套餐 - + //智象 + if (product.getProjectType().intValue() == EnumProject.PROJECT_5.getCode().intValue()) { + if(EnumProductType.product_1.getCode().equals(product.getType())){ + userBasicPropertyService.updUserGlod(order.getUserId(),product.getProjectType(),EnumPropertyLogType.RECHARGE.getCode(), + order.getId(),product.getGlod(),now); + }else if(EnumProductType.product_2.getCode().equals(product.getType())){ + } + }else { + projectFactory.getProjectService(product.getProjectType()).handlePaidOrder(order.getUserId(),order.getFinalTenantId(),product); } }catch(MallinkException e){ throw e; diff --git a/suimangService/src/main/java/com/iformall/service/project/service/ProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/ProjectService.java index da7c4a5..e6380c5 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/ProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/ProjectService.java @@ -1,6 +1,7 @@ package com.iformall.service.project.service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; public interface ProjectService { @@ -13,8 +14,15 @@ public interface ProjectService { public Object getPayProductExtroInfo(Product product); /** - * 计算生成视频账单 + * 处理充值成功 + */ + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product); + + /** + * 处理生成视频账单 * @return */ - public CreateBilling calcuteVideoBilling(String videoSeconds,Long videoSize); + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds,Long videoSize); + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/CommonProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/CommonProjectService.java index 3c3c3e9..b4e16c0 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/CommonProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/CommonProjectService.java @@ -3,6 +3,7 @@ package com.iformall.service.project.service.impl; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; @@ -16,9 +17,17 @@ public class CommonProjectService extends BaseProjectService implements ProjectS } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + // TODO Auto-generated method stub + + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { // TODO Auto-generated method stub return null; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/HBProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/HBProjectService.java index d310eba..7ba27c2 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/HBProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/HBProjectService.java @@ -3,6 +3,7 @@ package com.iformall.service.project.service.impl; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; @@ -16,8 +17,16 @@ public class HBProjectService extends BaseProjectService implements ProjectServi } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + // TODO Auto-generated method stub + + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { return null; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/HKProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/HKProjectService.java index 11707c2..97eb3a2 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/HKProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/HKProjectService.java @@ -3,6 +3,7 @@ package com.iformall.service.project.service.impl; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; @@ -16,9 +17,17 @@ public class HKProjectService extends BaseProjectService implements ProjectServi } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + // TODO Auto-generated method stub + + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { // TODO Auto-generated method stub return null; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/HYProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/HYProjectService.java index 68abafa..3fdc9b1 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/HYProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/HYProjectService.java @@ -1,14 +1,23 @@ package com.iformall.service.project.service.impl; import java.math.BigDecimal; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; +import com.iformall.service.WxCUserBasicInfoService; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; //慧影 @Service public class HYProjectService extends BaseProjectService implements ProjectService{ + + @Lazy + @Autowired + WxCUserBasicInfoService wxCUserBasicInfoService; @Override public Object getPayProductExtroInfo(Product product) { @@ -17,14 +26,24 @@ public class HYProjectService extends BaseProjectService implements ProjectServi } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + //更新用户的币 + wxCUserBasicInfoService.reducePoints(cUserId, cUserFinalTenantId,-product.getGlod()); + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { //慧影视频按照时长来扣币 CreateBilling cb = new CreateBilling(); //每秒扣币 float poinsPerSeconds = 0.008F; cb.setTotalCostPoins(new BigDecimal(videoSeconds).multiply(new BigDecimal(poinsPerSeconds)).intValue()); cb.setDetail("每秒扣币"+poinsPerSeconds+"个,总共时长"+videoSeconds+"秒"); + //扣去当前用户的币 + wxCUserBasicInfoService.reducePoints(cUserId, cUserFinalTenantId,cb.getTotalCostPoins()); return cb; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/HYuProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/HYuProjectService.java index 5fd9a76..a925fd8 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/HYuProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/HYuProjectService.java @@ -3,6 +3,7 @@ package com.iformall.service.project.service.impl; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; @@ -16,9 +17,17 @@ public class HYuProjectService extends BaseProjectService implements ProjectServ } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + // TODO Auto-generated method stub + + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { // TODO Auto-generated method stub return null; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/project/service/impl/ZXProjectService.java b/suimangService/src/main/java/com/iformall/service/project/service/impl/ZXProjectService.java index 05a3cbd..0fa7a93 100644 --- a/suimangService/src/main/java/com/iformall/service/project/service/impl/ZXProjectService.java +++ b/suimangService/src/main/java/com/iformall/service/project/service/impl/ZXProjectService.java @@ -3,6 +3,7 @@ package com.iformall.service.project.service.impl; import org.springframework.stereotype.Service; import com.iformall.domain.po.Product; +import com.iformall.domain.po.WxCUserBasicInfo; import com.iformall.service.project.entity.CreateBilling; import com.iformall.service.project.service.ProjectService; @@ -16,9 +17,17 @@ public class ZXProjectService extends BaseProjectService implements ProjectServi } @Override - public CreateBilling calcuteVideoBilling(String videoSeconds, Long videoSize) { + public void handlePaidOrder(Long cUserId,String cUserFinalTenantId,Product product) { + // TODO Auto-generated method stub + + } + + @Override + public CreateBilling handleCreateVideoBilling(Long cUserId,String cUserFinalTenantId,String videoSeconds, Long videoSize) { // TODO Auto-generated method stub return null; } + + } diff --git a/suimangService/src/main/java/com/iformall/service/sm/impl/UserMouldVideoServiceImpl.java b/suimangService/src/main/java/com/iformall/service/sm/impl/UserMouldVideoServiceImpl.java index 8cd9fb1..56cdd9e 100644 --- a/suimangService/src/main/java/com/iformall/service/sm/impl/UserMouldVideoServiceImpl.java +++ b/suimangService/src/main/java/com/iformall/service/sm/impl/UserMouldVideoServiceImpl.java @@ -483,12 +483,11 @@ public class UserMouldVideoServiceImpl implements UserMouldVideoService { videoUpd.setVideoMsg("视频上传成功"); videoUpd.setUpdateDate(new Date()); //设置扣费,当前方法是慧影项目专用的 - CreateBilling cb = projectFactory.getProjectService(EnumProject.PROJECT_2.getCode()).calcuteVideoBilling(videoUpd.getVideoTime(), videoUpd.getVideoSize()); + CreateBilling cb = projectFactory.getProjectService(EnumProject.PROJECT_2.getCode()) + .handleCreateVideoBilling(userMouldVideo.getUserId(), userMouldVideo.getFinalTenantId(), videoUpd.getVideoTime(), videoUpd.getVideoSize()); if (null != cb) { videoUpd.setCostPoints(cb.getTotalCostPoins()); videoUpd.setCostPointsDetail(cb.getDetail()); - //扣去当前用户的币 - wxCUserBasicInfoService.reducePoints(mouldVideo.getUserId(), mouldVideo.getFinalTenantId(),cb.getTotalCostPoins()); } this.updateById(videoUpd); break;