瀏覽代碼

中台达人预付款代码

ldz 1 月之前
父節點
當前提交
9b2fbba594

+ 4 - 0
alien-entity/src/main/java/shop/alien/entity/store/LifeUserExpertOrder.java

@@ -123,4 +123,8 @@ public class LifeUserExpertOrder extends Model<LifeUserExpertOrder> {
     @TableField(value = "reason_refusal")
     private String reasonRefusal;
 
+    @ApiModelProperty(value = "预付款审核时间")
+    @TableField(value = "advance_payment_time")
+    private Date advancePaymentTime;
+
 }

+ 6 - 0
alien-entity/src/main/java/shop/alien/entity/store/vo/LifeUserExpertOrderVo.java

@@ -106,4 +106,10 @@ public class LifeUserExpertOrderVo extends LifeUserExpertOrder {
     @ApiModelProperty(value = "身份证号")
     private String idCard;
 
+    @ApiModelProperty(value = "预付款审核时间")
+    @TableField(value = "advance_payment_time")
+    private Date advancePaymentTime;
+
+    @ApiModelProperty(value = "门店电话")
+    private String storeTel;
 }

+ 1 - 1
alien-entity/src/main/java/shop/alien/mapper/LifeUserExpertOrderMapper.java

@@ -104,7 +104,7 @@ public interface LifeUserExpertOrderMapper extends BaseMapper<LifeUserExpertOrde
 
 
 
-    @Select("SELECT ccc.* ,info.store_name,user.real_name,expert.promote_type,expert.advance_rate,expert.commission_rate,user.user_phone,user.id_card,package.name " +
+    @Select("SELECT ccc.* ,info.store_name,info.store_tel,user.real_name,expert.promote_type,expert.advance_rate,expert.commission_rate,user.user_phone,user.id_card,package.name " +
             "FROM life_user_expert_order ccc " +
             "LEFT JOIN store_info info on info.id = ccc.store_id " +
             "left join life_user_expert expert on expert.id = ccc.expert_id " +

+ 3 - 1
alien-entity/src/main/resources/mapper/LifeUserExpertOrderMapper.xml

@@ -28,11 +28,13 @@
         <result column="advance_payment_status" property="advancePaymentStatus" />
         <result column="end_funds_button" property="endFundsButton" />
         <result column="reason_refusal" property="reasonRefusal" />
+        <result column="advance_payment_time" property="advancePaymentTime" />
+
     </resultMap>
 
     <!-- 通用查询结果列 -->
     <sql id="Base_Column_List">
-        id, order_id, expert_id, package_id , store_id, order_money, account_money, order_time, complete_time, first_payment_time, final_payment_time, order_play_count, order_gmv, actual_gmv, status, delete_flag, created_time, created_user_id, updated_time, updated_user_id, advance_payment_status, end_funds_button ,reason_refusal
+        id, order_id, expert_id, package_id , store_id, order_money, account_money, order_time, complete_time, first_payment_time, final_payment_time, order_play_count, order_gmv, actual_gmv, status, delete_flag, created_time, created_user_id, updated_time, updated_user_id, advance_payment_status, end_funds_button ,reason_refusal,advancePaymentTime
     </sql>
 
 </mapper>

+ 9 - 3
alien-store/src/main/java/shop/alien/store/controller/LifeUserExpertController.java

@@ -15,6 +15,7 @@ import shop.alien.entity.store.vo.LifeUserExpertOrderVo;
 import shop.alien.entity.store.vo.LifeUserExpertVo;
 import shop.alien.store.service.LifeUserExpertService;
 
+import java.math.BigDecimal;
 import java.util.List;
 
 @Api(tags = {"平台-达人管理"})
@@ -161,12 +162,17 @@ public class LifeUserExpertController {
     @ApiOperationSupport(order = 12)
     @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "达人订单表id", dataType = "Integer", paramType = "query",required = true),
                         @ApiImplicitParam(name = "reasonRefusal", value = "拒绝原因", dataType = "String", paramType = "query"),
+                        @ApiImplicitParam(name = "userPhone", value = "用户手机号", dataType = "String", paramType = "query"),
+                        @ApiImplicitParam(name = "name", value = "套餐名称", dataType = "String", paramType = "query"),
+                        @ApiImplicitParam(name = "storeTel", value = "门店电话", dataType = "String", paramType = "query"),
+                        @ApiImplicitParam(name = "orderNo", value = "订单号", dataType = "String", paramType = "query"),
+                        @ApiImplicitParam(name = "orderMoney", value = "用户id", dataType = "String", paramType = "query"),
                         @ApiImplicitParam(name = "advancePaymentStatus", value = "预付款审核状态", dataType = "String", paramType = "query")
     })
     @GetMapping("/getAdvancePaymentReview")
-    public R <Boolean> getAdvancePaymentReview( Integer id,String reasonRefusal, String advancePaymentStatus) {
-        log.info("LifeUserExpertController.getViewDetails?Id={},reasonRefusal{},advancePaymentStatus{}",id,reasonRefusal,advancePaymentStatus);
-        return R.data(lifeUserExpertService.getAdvancePaymentReview(id, reasonRefusal, advancePaymentStatus));
+    public R <Boolean> getAdvancePaymentReview(Integer id, String reasonRefusal, String userPhone, String name, String storeTel, String orderNo, String orderMoney, String advancePaymentStatus) {
+        log.info("LifeUserExpertController.getViewDetails?Id={},reasonRefusal{},userPhone{},name{},orderNo{},orderMoney{},advancePaymentStatus{}",id,reasonRefusal,userPhone,name,orderNo,orderMoney,advancePaymentStatus);
+        return R.data(lifeUserExpertService.getAdvancePaymentReview(id, reasonRefusal, userPhone, name,storeTel,orderNo,orderMoney,advancePaymentStatus));
     }
 
 

+ 1 - 1
alien-store/src/main/java/shop/alien/store/service/LifeUserExpertService.java

@@ -48,5 +48,5 @@ public interface LifeUserExpertService extends IService<LifeUserExpert> {
 
     IPage<LifeUserExpertOrderVo> getAdvancePaymentList(Integer page, Integer size,String realName, String userPhone, String advancePaymentStatus, String orderCreatedTime, String orderEndTime ,String name, Integer userId);
 
-    Boolean getAdvancePaymentReview(Integer id,String reasonRefusal, String advancePaymentStatus);
+    Boolean getAdvancePaymentReview(Integer id,String reasonRefusal, String userPhone,String name,String storeTel,String orderNo, String orderMoney,String advancePaymentStatus);
 }

+ 36 - 10
alien-store/src/main/java/shop/alien/store/service/impl/LifeUserExpertServiceImpl.java

@@ -16,6 +16,7 @@ import shop.alien.entity.store.vo.LifeUserExpertOrderVo;
 import shop.alien.entity.store.vo.LifeUserExpertVo;
 import shop.alien.mapper.*;
 import shop.alien.store.service.LifeUserExpertService;
+import shop.alien.store.util.ali.AliApi;
 import shop.alien.util.common.ListToPage;
 
 import java.math.BigDecimal;
@@ -46,6 +47,7 @@ public class LifeUserExpertServiceImpl extends ServiceImpl<LifeUserExpertMapper,
     private final ExpertImgMapper expertImgMapper;
     private final LifeUserExpertOrderMapper lifeUserExpertOrderMapper;
     private final LifeNoticeMapper lifeNoticeMapper;
+    private final AliApi aliApi;
 
     @Override
     public IPage<LifeUserExpertVo> getUserExpertList(int page, int size, String userName, String expertCode, Integer userId) {
@@ -75,6 +77,8 @@ public class LifeUserExpertServiceImpl extends ServiceImpl<LifeUserExpertMapper,
     @Override
     public boolean becomeExpert(Integer id,  String userPhone, String comment, Integer expertStatus ,Integer commissionRate, Integer advanceRate) {
         LambdaQueryWrapper<LifeUserExpert> wrapper = new LambdaQueryWrapper<>();
+        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
+        String formattedDate = LocalDateTime.now().format(formatter);
         wrapper.eq(LifeUserExpert::getId, id);
         LifeUserExpert lifeUserExpert = lifeUserExpertMapper.selectIsExpertById(id);
         if (lifeUserExpert == null) {
@@ -89,41 +93,42 @@ public class LifeUserExpertServiceImpl extends ServiceImpl<LifeUserExpertMapper,
             lifeUserExpert.setExpertCode(setExpertCode());
             lifeUserExpert.setCommissionRate(commissionRate);
             lifeUserExpert.setAdvanceRate(advanceRate);
+            String text = "您在"+formattedDate+"提交的信息已经通过审核。恭喜您成为达人。";
+            String title = "审核通过通知";
+            sendMessage(expertStatus, userPhone, text,title);
         } else if (expertStatus == 2) {
             lifeUserExpert.setRefuseBecause(comment);
             lifeUserExpert.setExpertStatus(2);
+            String text = "您在"+formattedDate+"提交的信息未通过审核,拒绝原因:"+comment+"。请您重新填写信息后再次提交至平台审核。";
+            String title = "审核失败通知";
+            sendMessage(expertStatus, userPhone, text,title);
         }
-        sendMessage(expertStatus, userPhone, comment);
         return lifeUserExpertMapper.updateExpert(lifeUserExpert);
     }
 
 
-    public void sendMessage(Integer expertStatus,String userPhone ,String comment) {
+    public void sendMessage(Integer expertStatus,String userPhone ,String text,String title) {
         LifeNotice lifeMessage = new LifeNotice();
-        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
-        String formattedDate = LocalDateTime.now().format(formatter);
         if (expertStatus == 0){
-            String text = "您在"+formattedDate+"提交的信息已经通过审核。恭喜您成为达人。";
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("message", text);
             lifeMessage.setReceiverId("user_"+userPhone);
-            lifeMessage.setTitle("审核通过通知");
             lifeMessage.setContext(jsonObject.toJSONString());
             lifeMessage.setNoticeType(1);
             lifeMessage.setIsRead(0);
             lifeMessage.setDeleteFlag(0);
             lifeMessage.setSenderId("system");
+            lifeMessage.setTitle(title);
             lifeNoticeMapper.insert(lifeMessage);
         } else if (expertStatus == 2) {
-            String text = "您在"+formattedDate+"提交的信息未通过审核,拒绝原因:"+comment+"。请您重新填写信息后再次提交至平台审核。";
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("message", text);
             lifeMessage.setReceiverId("user_"+userPhone);
-            lifeMessage.setTitle("审核失败通知");
             lifeMessage.setContext(jsonObject.toJSONString());
             lifeMessage.setNoticeType(1);
             lifeMessage.setIsRead(0);
             lifeMessage.setDeleteFlag(0);
+            lifeMessage.setTitle(title);
             lifeMessage.setSenderId("system");
             lifeNoticeMapper.insert(lifeMessage);
         }
@@ -428,13 +433,34 @@ public class LifeUserExpertServiceImpl extends ServiceImpl<LifeUserExpertMapper,
     }
 
     @Override
-    public Boolean getAdvancePaymentReview(Integer id,String reasonRefusal, String advancePaymentStatus) {
+    public Boolean getAdvancePaymentReview(Integer id,String reasonRefusal,String userPhone, String name,String storeTel,String orderNo, String orderMoney,String advancePaymentStatus) {
         LifeUserExpertOrder lifeUserExpertOrder =new LifeUserExpertOrder() ;
         lifeUserExpertOrder.setId(id);
         lifeUserExpertOrder.setAdvancePaymentStatus(advancePaymentStatus);
-        lifeUserExpertOrder.setUpdatedTime(new Date());
+        lifeUserExpertOrder.setAdvancePaymentTime(new Date());
         lifeUserExpertOrder.setReasonRefusal(reasonRefusal);
         int i=lifeUserExpertOrderMapper.updateById(lifeUserExpertOrder);
+
+        Integer advancePaymentStatu= Integer.valueOf(advancePaymentStatus);
+        if ("0".equals(advancePaymentStatus)){
+            String text = "您的"+name+"已被商家订购,可在应用内我的-我的钱包中查看预付款金额。";
+            String title = "发放预付款通知";
+            sendMessage(advancePaymentStatu,userPhone ,text,title);
+        } else if ("2".equals(advancePaymentStatus)){
+            String text = "您订购的达人推广套餐-"+name+",审核未通过,拒绝原因:"+reasonRefusal+",平台会在1-3个工作日将全部款项发放到你的支付宝账户,请注意查收。如未到账,请联系客服处理。";
+            String title = "订单退款通知";
+            sendMessage(advancePaymentStatu,storeTel ,text,title);
+
+
+            //退款逻辑
+            String partialRefundCode = "";
+            String result=aliApi.processRefund(orderNo, orderMoney, reasonRefusal, partialRefundCode);
+            if ("调用成功".equals(result)){
+                String text1 = "您订购的达人推广套餐-"+name+",订单金额:"+orderMoney+"元,已经成功发放到您的支付宝账户,请注意查收。";
+                String title1 = "退款到账成功通知";
+                sendMessage(advancePaymentStatu,userPhone ,text1,title1);
+            }
+        }
         if (i>0){
             return true;
         }