Przeglądaj źródła

达人作品表实体以及sql

ldz 1 miesiąc temu
rodzic
commit
8f48886571

+ 5 - 1
alien-entity/src/main/java/shop/alien/entity/store/LifeUserExpertOrder.java

@@ -86,7 +86,7 @@ public class LifeUserExpertOrder extends Model<LifeUserExpertOrder> {
     @TableField("actual_gmv")
     private BigDecimal actualGmv;
 
-    @ApiModelProperty(value = "状态(1-待完成  2-已完成)")
+    @ApiModelProperty(value = "状态(1-待支付   2-交易关闭  3-待履约  4履约中  5已完成  6已退款)")
     @TableField("status")
     private Integer status;
 
@@ -154,4 +154,8 @@ public class LifeUserExpertOrder extends Model<LifeUserExpertOrder> {
     @ApiModelProperty(value = "预付款比例 ")
     @TableField(value = "advance_rate")
     private Integer advanceRate;
+
+    @ApiModelProperty(value = "取消时间 ")
+    @TableField(value = "cancel_time")
+    private Date cancelTime;
 }

+ 5 - 1
alien-entity/src/main/java/shop/alien/entity/store/LifeUserExpertPurchase.java

@@ -32,7 +32,7 @@ public class LifeUserExpertPurchase extends Model<LifeUserExpertPurchase> {
     @TableField("user_id")
     private Integer userId;
 
-    @ApiModelProperty(value = "订单id(life_user_expert_order 表 id)")
+    @ApiModelProperty(value = "订单id(life_user_order 表 id)")
     @TableField("order_id")
     private Integer orderId;
 
@@ -64,4 +64,8 @@ public class LifeUserExpertPurchase extends Model<LifeUserExpertPurchase> {
     @ApiModelProperty(value = "修改人ID")
     @TableField(value = "updated_user_id", fill = FieldFill.INSERT_UPDATE)
     private Integer updatedUserId;
+
+    @ApiModelProperty(value = "达人订单表id   life_user_expert_order ")
+    @TableField(value = "expert_order_id", fill = FieldFill.INSERT_UPDATE)
+    private Integer expertOrderId;
 }

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

@@ -51,7 +51,7 @@ public class LifeUserExpertOrderVo extends LifeUserExpertOrder {
     private BigDecimal accountMoney;
 
     @ApiModelProperty(value = "待履约收益")
-    private Integer pendingPerformanceIncome;
+    private BigDecimal pendingPerformanceIncome;
 
     @ApiModelProperty(value = "订单完成数")
     private Integer completedOrdersNumber;

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

@@ -55,7 +55,7 @@ public interface LifeUserExpertMapper extends BaseMapper<LifeUserExpert> {
             "    where delete_flag = 0 " +
             "    group by expert_id " +
             ") " +
-            "select expert.id, expert.expert_code, expert.promote_type,expert.add_explanation ,expert.expert_status, user.user_phone,user.user_name,user.id_card ,user.real_name,ifnull(fans.num, 0) fansNum, ifnull(dynamics.dynamicsNum, 0) worksNum, ifnull(dynamics.likeNum, 0) likeNum, ifnull(dynamics.transferNum,0),ifnull(dynamics.playNum, 0) playNum, " +
+            "select expert.id, expert.expert_code, expert.promote_type,expert.add_explanation ,expert.expert_status, user.user_phone,user.user_name,user.id_card ,user.real_name,ifnull(fans.num, 0) fansNum, ifnull(dynamics.dynamicsNum, 0) worksNum, ifnull(dynamics.likeNum, 0) likeNum, ifnull(dynamics.transferNum,0) transferNum,ifnull(dynamics.playNum, 0) playNum, " +
             "       ifnull(orders.orderMoney, 0) orderMoney, ifnull(orders.accountMoney, 0) accountMoney, (ifnull(orders.orderMoney, 0) - ifnull(orders.accountMoney, 0)) pendMoney ,ifnull(orders.orderMoney * orders.commission_rate/100, 0) commissionSum , ifnull(comment.commitCount, 0) commitCountSum " +
             "from life_user_expert expert " +
             "join life_user user on user.id = expert.user_id " +

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

@@ -41,14 +41,14 @@ public interface LifeUserExpertOrderMapper extends BaseMapper<LifeUserExpertOrde
 
     @Select("select SUM(lueo.account_money) AS accountMoney, " +
             "SUM(COALESCE(lueo.order_money, 0)) - SUM(COALESCE(lueo.account_money, 0)) AS pendingPerformanceIncome, " +
-            "SUM(CASE WHEN lueo.STATUS = 2 THEN 1 ELSE 0 END) AS completedOrdersNumber, " +
-            "SUM(CASE WHEN lueo.STATUS = 1 THEN 1 ELSE 0 END) AS incompleteOrdersNumber " +
+            "SUM(CASE WHEN lueo.STATUS = 5 THEN 1 ELSE 0 END) AS completedOrdersNumber, " +
+            "SUM(CASE WHEN (lueo.STATUS = 3 or lueo.STATUS = 4) THEN 1 ELSE 0 END) AS incompleteOrdersNumber " +
             "FROM life_user_expert_order lueo " +
             " WHERE expert_id = #{expertId}")
     List<LifeUserExpertOrderVo> getExpertOrderDetails(@Param("expertId") Long expertId);
 
 
-    @Select("select orders.id, orders.order_no, store.store_name, orders.order_money, package.name,orders.account_money,orders.end_funds_button, if (orders.status = '1', '待完成', '已完成') statusName, " +
+    @Select("select orders.*, orders.order_no, store.store_name, orders.order_money, package.name,orders.account_money,orders.end_funds_button, if (orders.status = '1', '待完成', '已完成') statusName, " +
             "       orders.order_time, orders.complete_time  " +
             "from life_user_expert_order orders " +
             "left join store_info store on store.id = orders.store_id " +
@@ -61,7 +61,7 @@ public interface LifeUserExpertOrderMapper extends BaseMapper<LifeUserExpertOrde
             "earliest_works AS (SELECT order_id, MIN(created_time) AS earliest_created_time FROM life_user_expert_works GROUP BY order_id), " +
             "purchase AS (SELECT order_id, SUM(CASE WHEN STATUS = 1 THEN 1 ELSE 0 END) completedOrdersNumber, SUM(purchase_amount) amount FROM life_user_expert_purchase WHERE delete_flag = 0 GROUP BY order_id), " +
             "record AS (SELECT order_id, COUNT(order_id) storeVisitViewCount FROM life_browse_record WHERE delete_flag = 0 GROUP BY order_id) " +
-            "SELECT orders.id, orders.order_no, store.store_name, orders.order_money, orders.first_funds_button,orders.end_funds_button,package.name,ew.earliest_created_time, orders.account_money, IF(orders.STATUS = '1', '待完成', '已完成') AS statusName, " +
+            "SELECT orders.id, orders.order_no, store.store_name, orders.order_money, orders.end_funds_button,package.name,ew.earliest_created_time, orders.account_money, IF(orders.STATUS = '1', '待完成', '已完成') AS statusName, " +
             "orders.order_time, orders.first_payment_time, orders.final_payment_time, orders.complete_time, orders.order_play_count, orders.order_gmv, " +
             "IFNULL(works.playCount, 0) AS actualPlayCount, IFNULL(purchase.amount, 0) AS actualGmv, IFNULL(purchase.completedOrdersNumber, 0) AS completedOrdersNumber, " +
             "IFNULL(purchase.amount, 0) AS transactionAmount, IFNULL(record.storeVisitViewCount, 0) AS storeVisitViewCount, ew.earliest_created_time AS firstWorkTime " +
@@ -76,6 +76,29 @@ public interface LifeUserExpertOrderMapper extends BaseMapper<LifeUserExpertOrde
     LifeUserExpertOrderVo fetchExpertOrderInfo(@Param("expertId") Long expertId, @Param("orderId") String orderId);
 
 
+
+    @Select("WITH works AS (SELECT order_id, SUM(play_count) playCount ,sum(real_order_gmv) actualGmv FROM life_user_expert_works WHERE delete_flag = 0 GROUP BY order_id), " +
+            "earliest_works AS (SELECT order_id, MIN(created_time) AS earliest_created_time  FROM life_user_expert_works GROUP BY order_id), " +
+            "purchase AS (SELECT order_id, SUM(CASE WHEN STATUS = 1 THEN 1 ELSE 0 END) completedOrdersNumber ,SUM(purchase_amount) amount  FROM life_user_expert_purchase WHERE delete_flag = 0 GROUP BY order_id), " +
+            "record AS (SELECT order_id, COUNT(order_id) storeVisitViewCount FROM life_browse_record WHERE delete_flag = 0 GROUP BY order_id) " +
+            "SELECT orders.id, orders.order_no, store.store_name, orders.order_money, orders.end_funds_button,package.name,ew.created_time, orders.account_money, orders.status  AS statusName, " +
+            "orders.order_time, orders.first_payment_time, orders.final_payment_time, orders.complete_time, orders.order_play_count, orders.order_gmv, IFNULL(dy.reality_count, 0) AS actualPlayCount, " +
+            "IFNULL(works.actualGmv, 0) AS actualGmv, IFNULL(purchase.completedOrdersNumber, 0) AS completedOrdersNumber, " +
+            "IFNULL(purchase.amount, 0) AS transactionAmount, IFNULL(record.storeVisitViewCount, 0) AS storeVisitViewCount, ew.created_time AS earliestCreatedTime " +
+            "FROM life_user_expert_order orders " +
+            "left join life_promotion_package package on package.id = orders.package_id " +
+            "LEFT JOIN store_info store ON store.id = orders.store_id " +
+            "LEFT JOIN works ON works.order_id = orders.id " +
+            "LEFT JOIN purchase ON purchase.order_id = orders.id " +
+            "LEFT JOIN record ON record.order_id = orders.id " +
+            "LEFT JOIN life_user_expert_works ew ON ew.order_id = orders.id " +
+            "LEFT JOIN life_user_dynamics dy ON dy.expert_id = orders.id " +
+            "WHERE orders.expert_id = #{expertId} AND orders.id = #{orderId}")
+    LifeUserExpertOrderVo getExpertOrderInfo(@Param("expertId") Long expertId, @Param("orderId") String orderId);
+
+
+
+
     @Select("SELECT works.expert_id, works.order_id, works.works_url, works.play_count, works.created_time, orders.order_money " +
             "FROM life_user_expert_works works " +
             "LEFT JOIN life_user_expert_order orders ON works.order_id = orders.id " +
@@ -125,4 +148,12 @@ public interface LifeUserExpertOrderMapper extends BaseMapper<LifeUserExpertOrde
             "left join life_promotion_package package on package.id = ccc.package_id " +
             " ${ew.customSqlSegment}")
     List<LifeUserExpertOrderVo> getFinalPaymentList(@Param(Constants.WRAPPER) QueryWrapper<LifeUserExpertVo> wrapper);
+
+
+    @Select("SELECT orders.status " +
+            "FROM life_promotion_package package " +
+            "left join life_user_expert_order orders on   orders.package_id = package.id " +
+            "where package.id = #{id} and orders.delete_flag =0 and package.delete_flag=0 "
+    )
+    List<LifeUserExpertOrderVo> getStatus(@Param("id") Integer id);
 }

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

@@ -36,12 +36,13 @@
         <result column="refund_time" property="refundTime" />
         <result column="commission_rate" property="commissionRate" />
         <result column="advance_rate" property="advanceRate" />
+        <result column="cancel_time" property="cancelTime" />
 
     </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,advancePaymentTime,endFundsTime,endPaymentTime,endPaymentRefusal,payTime,refundTime,commission_rate,advance_rate
+        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,endFundsTime,endPaymentTime,endPaymentRefusal,payTime,refundTime,commission_rate,advance_rate,cancel_time
     </sql>
 
 </mapper>

+ 9 - 0
alien-store/src/main/java/shop/alien/store/controller/LifePromotionPackageController.java

@@ -96,5 +96,14 @@ public class LifePromotionPackageController {
         return R.data(promotionPackageService.buyPromotion(lifePromotionPackageVo));
     }
 
+    @ApiOperation(value = "是否可以修改或者是删除达人套餐")
+    @ApiOperationSupport(order = 6)
+//    @ApiImplicitParams(@ApiImplicitParam(name = "达人推广套餐表id", value = "id", dataType = "Integer", paramType = "query", required = true))
+    @PostMapping("/getStatus")
+    public R<Map<String, String>> getStatus(@RequestParam("id") Integer id) {
+        log.info("LifePromotionPackageController.getStatus?id={}", id);
+        return R.data(promotionPackageService.getStatus(id));
+    }
+
 
 }

+ 8 - 0
alien-store/src/main/java/shop/alien/store/controller/LifeUserExpertPurchaseController.java

@@ -34,4 +34,12 @@ public class LifeUserExpertPurchaseController {
         return lifeUserExpertPurchaseService.purchaseTalentPromotedProduct(lifeUserExpertPurchase);
     }
 
+    @ApiOperation("用户购买达人推广产品记录")
+    @ApiOperationSupport(order = 2)
+    @PostMapping("/purchaseTalentPromotedProductLog")
+    public Boolean purchaseTalentPromotedProductLog(@RequestBody LifeUserExpertPurchase lifeUserExpertPurchase) {
+        log.info("LifeUserExpertPurchaseController.purchaseTalentPromotedProduct?lifeUserExpertPurchase={}", lifeUserExpertPurchase);
+        return lifeUserExpertPurchaseService.purchaseTalentPromotedProductLog(lifeUserExpertPurchase);
+    }
+
 }

+ 2 - 0
alien-store/src/main/java/shop/alien/store/service/LifeUserExpertPurchaseService.java

@@ -10,4 +10,6 @@ public interface LifeUserExpertPurchaseService extends IService<LifeUserExpertPu
 
     Map<String, Object> purchaseTalentPromotedProduct(LifeUserExpertPurchase lifeUserExpertPurchase);
 
+    Boolean purchaseTalentPromotedProductLog (LifeUserExpertPurchase lifeUserExpertPurchase);
+
 }

+ 3 - 0
alien-store/src/main/java/shop/alien/store/service/PromotionPackageService.java

@@ -13,4 +13,7 @@ public interface PromotionPackageService extends IService<LifePromotionPackage>
     IPage<LifePromotionPackageVo> getByExpertId(Long expertId, Integer page, Integer size);
 
     Map<String, Object> buyPromotion(LifePromotionPackageVo lifePromotionPackageVo);
+
+
+    Map<String,String> getStatus(Integer id);
 }

+ 14 - 14
alien-store/src/main/java/shop/alien/store/service/impl/LifeUserExpertOrderServiceImpl.java

@@ -60,7 +60,7 @@ public class LifeUserExpertOrderServiceImpl extends ServiceImpl<LifeUserExpertOr
 
     @Override
     public List<Map<String, Object>> fetchExpertOrderInfo(Long expertId, String orderId) {
-        LifeUserExpertOrderVo lifeUserExpertOrderVos = lifeUserExpertOrderMapper.fetchExpertOrderInfo(expertId, orderId);
+        LifeUserExpertOrderVo lifeUserExpertOrderVos = lifeUserExpertOrderMapper.getExpertOrderInfo(expertId, orderId);
         List<Map<String, Object>> dataList = new ArrayList<>();
         if (lifeUserExpertOrderVos == null) {
             return dataList;
@@ -101,17 +101,17 @@ public class LifeUserExpertOrderServiceImpl extends ServiceImpl<LifeUserExpertOr
         zijinliuxiang.add(buyMap);
 
         // 处理首次平台打款状态
-        Map<String, Object> firstPayMap = new HashMap<>();
-        if (lifeUserExpertOrderVos.getFirstPaymentTime() != null) {
-            firstPayMap.put("title", "首次平台打款");
-            firstPayMap.put("time", lifeUserExpertOrderVos.getFirstPaymentTime());
-            firstPayMap.put("status", 1);
-            firstPayMap.put("amount", lifeUserExpertOrderVos.getAccountMoney());
-        } else {
-            firstPayMap.put("title", "平台打款");
-            firstPayMap.put("status", 0);
-        }
-        zijinliuxiang.add(firstPayMap);
+//        Map<String, Object> firstPayMap = new HashMap<>();
+//        if (lifeUserExpertOrderVos.getFirstPaymentTime() != null) {
+//            firstPayMap.put("title", "首次平台打款");
+//            firstPayMap.put("time", lifeUserExpertOrderVos.getFirstPaymentTime());
+//            firstPayMap.put("status", 1);
+//            firstPayMap.put("amount", lifeUserExpertOrderVos.getAccountMoney());
+//        } else {
+//            firstPayMap.put("title", "平台打款");
+//            firstPayMap.put("status", 0);
+//        }
+//        zijinliuxiang.add(firstPayMap);
 
         // 处理发布作品状态
         Map<String, Object> pullMap = new HashMap<>();
@@ -141,12 +141,12 @@ public class LifeUserExpertOrderServiceImpl extends ServiceImpl<LifeUserExpertOr
         // 处理尾次平台打款状态
         Map<String, Object> finalPayMap = new HashMap<>();
         if (lifeUserExpertOrderVos.getFinalPaymentTime() != null) {
-            finalPayMap.put("title", "尾次平台打款");
+            finalPayMap.put("title", "尾款发放");
             finalPayMap.put("time", lifeUserExpertOrderVos.getFinalPaymentTime());
             finalPayMap.put("status", 1);
             finalPayMap.put("amount", lifeUserExpertOrderVos.getAccountMoney());
         } else {
-            finalPayMap.put("title", "平台打款");
+            finalPayMap.put("title", "尾款发放");
             finalPayMap.put("status", 0);
         }
         zijinliuxiang.add(finalPayMap);

+ 6 - 0
alien-store/src/main/java/shop/alien/store/service/impl/LifeUserExpertPurchaseServiceImpl.java

@@ -91,4 +91,10 @@ public class LifeUserExpertPurchaseServiceImpl extends ServiceImpl<LifeUserExper
         returnMap.put("success", "更新信息成功");
         return returnMap;
     }
+
+    @Override
+    public Boolean purchaseTalentPromotedProductLog(LifeUserExpertPurchase lifeUserExpertPurchase) {
+        int i=lifeUserExpertPurchaseMapper.insert(lifeUserExpertPurchase);
+        return i>0;
+    }
 }

+ 7 - 0
alien-store/src/main/java/shop/alien/store/service/impl/LifeUserExpertServiceImpl.java

@@ -474,6 +474,13 @@ public class LifeUserExpertServiceImpl extends ServiceImpl<LifeUserExpertMapper,
             String title = "发放预付款通知";
             String  phone = "user_"+userPhone;
             sendMessage(advancePaymentStatu,phone ,text,title);
+            //把预付款添加到用户钱包中
+
+
+
+
+
+
             map.put("codeMsg","审核成功");
             map.put("status","0");
             return map;

+ 21 - 0
alien-store/src/main/java/shop/alien/store/service/impl/PromotionPackageServiceImpl.java

@@ -214,6 +214,27 @@ public class PromotionPackageServiceImpl extends ServiceImpl<PromotionPackageMap
             return firstArrivalAmount;
         }
     }
+
+
+    @Override
+    public Map<String, String> getStatus(Integer id) {
+        Map<String, String> resultMap = new HashMap<>();
+        List<LifeUserExpertOrderVo> a=lifeUserExpertOrderMapper.getStatus(id);
+        //0 您有正在履约的订单,请完成后修改。 1可以修改
+        for (LifeUserExpertOrderVo lifeUserExpertOrderVo:a){
+            if (lifeUserExpertOrderVo.getStatus()==4){
+                resultMap.put("status", "0");
+                resultMap.put("message", "您有正在履约的订单,请完成后修改。");
+                return resultMap;
+            }
+        }
+        resultMap.put("status", "1");
+        resultMap.put("message", "");
+        return resultMap;
+
+    }
+
+
 }