Kaynağa Gözat

学习服务期

he2802 3 yıl önce
ebeveyn
işleme
9f1a778ca8

+ 1 - 1
zhongzheng-system/src/main/java/com/zhongzheng/modules/exam/service/impl/ExamApplyServiceImpl.java

@@ -198,7 +198,7 @@ public class ExamApplyServiceImpl extends ServiceImpl<ExamApplyMapper, ExamApply
         //查询学时通过情况
         Integer countGradePeriod = baseMapper.countGradePeriod(bo);
         if (countGradePeriod < 1){
-            throw new CustomException("学时审核未通过,不可以报名参加考试");
+            throw new CustomException("学时审核未通过或者班级有效期已过,不可以报名参加考试");
         }
         //查询考试通过情况
         Integer countSubscribe = baseMapper.countSubscribe(bo);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/order/service/impl/OrderBillSheetServiceImpl.java

@@ -209,6 +209,8 @@ public class OrderBillSheetServiceImpl extends ServiceImpl<OrderBillSheetMapper,
                 goods.setPayStatus(OrderGoods.PAY_PART);
                 order.setOrderStatus(Order.PAY_PART);  //订单支付状态改为部分支付
             }
+            //设置商品服务期
+            goods = iWxPayService.setServiceTime(goods);
             order.setStatus(1);//订单生效
             order.setUpdateTime(DateUtils.getNowTime());
             iOrderService.updateById(order);

+ 2 - 0
zhongzheng-system/src/main/java/com/zhongzheng/modules/wx/service/IWxPayService.java

@@ -39,4 +39,6 @@ public interface IWxPayService {
 
 	Map<String, String> refund(String out_refund_no,String transaction_id,  BigDecimal refund_fee, BigDecimal total_fee);
 
+	OrderGoods setServiceTime(OrderGoods g);
+
 }

+ 33 - 5
zhongzheng-system/src/main/java/com/zhongzheng/modules/wx/service/impl/WxPayServiceImpl.java

@@ -75,10 +75,7 @@ import org.springframework.transaction.annotation.Transactional;
 
 import java.io.IOException;
 import java.math.BigDecimal;
-import java.util.Collection;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 import java.util.concurrent.TimeUnit;
 import java.util.stream.Collectors;
 
@@ -359,7 +356,38 @@ public class WxPayServiceImpl  implements IWxPayService {
         return true;
     }
 
-    private OrderGoods setServiceTime(OrderGoods g){
+    //设置服务期
+    @Override
+    public OrderGoods setServiceTime(OrderGoods g){
+        GoodsVo goodsVo = iGoodsService.queryById(g.getGoodsId());
+        if (goodsVo.getGoodsType().equals(1L)){
+            if(Validator.isNotEmpty(goodsVo.getServiceTimeType())){
+                if(Validator.isNotEmpty(goodsVo.getServiceTimeNum())){
+                    if(goodsVo.getServiceTimeType()==1){ //年
+                        Calendar cal = new GregorianCalendar();
+                        cal.add(Calendar.YEAR,goodsVo.getServiceTimeNum().intValue());
+                        g.setServiceStartTime(DateUtils.getNowTime());
+                        g.setServiceEndTime(cal.getTimeInMillis()/1000);
+                    }
+                    else if(goodsVo.getServiceTimeType()==2){ //月
+                        Calendar cal = new GregorianCalendar();
+                        cal.add(Calendar.MONTH,goodsVo.getServiceTimeNum().intValue());
+                        g.setServiceStartTime(DateUtils.getNowTime());
+                        g.setServiceEndTime(cal.getTimeInMillis()/1000);
+                    }
+                    else if(goodsVo.getServiceTimeType()==3){ //天
+                        Calendar cal = new GregorianCalendar();
+                        cal.add(Calendar.DATE,goodsVo.getServiceTimeNum().intValue());
+                        g.setServiceStartTime(DateUtils.getNowTime());
+                        g.setServiceEndTime(cal.getTimeInMillis()/1000);
+                    }
+                }
+                if(goodsVo.getServiceTimeType()==4){ //区间
+                    g.setServiceStartTime(goodsVo.getStudyStartTime());
+                    g.setServiceEndTime(goodsVo.getStudyEndTime());
+                }
+            }
+        }
         return g;
     }