Explorar el Código

存在缴费bug

java110 hace 3 años
padre
commit
89d09bd5fb

+ 17 - 2
java110-utils/src/test/java/com/java110/utils/AppTest.java

@@ -1,9 +1,12 @@
 package com.java110.utils;
 
+import com.java110.utils.util.DateUtil;
 import junit.framework.Test;
 import junit.framework.TestCase;
 import junit.framework.TestSuite;
 
+import java.util.Calendar;
+
 /**
  * Unit test for simple App.
  */
@@ -33,9 +36,21 @@ public class AppTest
      */
     public void testApp()
     {
+        Calendar today = Calendar.getInstance();
+        today.setTime(DateUtil.getDateFromStringB("2022-12-26"));
+        int week = today.get(Calendar.WEEK_OF_MONTH);
+        int curDay = today.get(Calendar.DAY_OF_WEEK);
 
-        String a = "1";
-        System.out.printf("a=" + Integer.parseInt(a));
+        //一周第一天是否为星期天
+        boolean isFirstSunday = (today.getFirstDayOfWeek() == Calendar.SUNDAY);
+        //获取周几
+        //若一周第一天为星期天,则-1
+        if (isFirstSunday) {
+            curDay = curDay - 1;
+            if (curDay == 0) {
+                curDay = 7;
+            }
+        }
 
     }
 }

+ 7 - 8
service-acct/src/main/java/com/java110/acct/payment/business/oweFee/OweFeePaymentBusiness.java

@@ -42,8 +42,7 @@ import java.util.List;
  * 欠费缴费
  */
 @Service("oweFee")
-public class OweFeePaymentBusiness implements IPaymentBusiness{
-
+public class OweFeePaymentBusiness implements IPaymentBusiness {
 
 
     private final static Logger logger = LoggerFactory.getLogger(OweFeePaymentBusiness.class);
@@ -74,7 +73,7 @@ public class OweFeePaymentBusiness implements IPaymentBusiness{
 
 
     @Override
-    public PaymentOrderDto unified(ICmdDataFlowContext context,JSONObject reqJson) {
+    public PaymentOrderDto unified(ICmdDataFlowContext context, JSONObject reqJson) {
 
         String ownerId = reqJson.getString("ownerId");
         String roomId = reqJson.getString("roomId");
@@ -85,9 +84,9 @@ public class OweFeePaymentBusiness implements IPaymentBusiness{
         }
 
         FeeDto feeDto = new FeeDto();
-        if(!StringUtil.isEmpty(ownerId)){
+        if (!StringUtil.isEmpty(ownerId)) {
             feeDto.setOwnerId(ownerId);
-        }else {
+        } else {
             feeDto.setPayerObjId(roomId);
             feeDto.setPayerObjType(payObjType);
         }
@@ -136,7 +135,7 @@ public class OweFeePaymentBusiness implements IPaymentBusiness{
         PaymentOrderDto paymentOrderDto = new PaymentOrderDto();
         paymentOrderDto.setOrderId(orderId);
         paymentOrderDto.setMoney(money);
-        paymentOrderDto.setName(feeName+"欠费费用");
+        paymentOrderDto.setName(feeName + "欠费费用");
 
         JSONObject saveFees = new JSONObject();
         saveFees.put("orderId", orderId);
@@ -171,8 +170,8 @@ public class OweFeePaymentBusiness implements IPaymentBusiness{
         for (int feeIndex = 0; feeIndex < fees.size(); feeIndex++) {
             fee = fees.getJSONObject(feeIndex);
             if (fee.containsKey("deadlineTime")) {
-                fee.put("startTime", fee.getString("endTime"));
-                fee.put("endTime", fee.getString("deadlineTime"));
+                fee.put("startTime", DateUtil.getFormatTimeString(fee.getDate("endTime"), DateUtil.DATE_FORMATE_STRING_A));
+                fee.put("endTime", DateUtil.getFormatTimeString(fee.getDate("deadlineTime"), DateUtil.DATE_FORMATE_STRING_A));
                 fee.put("receivedAmount", fee.getString("feePrice"));
                 fee.put("state", "");
             }

+ 12 - 1
service-store/src/main/java/com/java110/store/smo/impl/ScheduleClassesStaffV1InnerServiceSMOImpl.java

@@ -439,9 +439,11 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             scDay = new ScheduleClassesDayDto();
             Calendar today = Calendar.getInstance();
             today.setTime(DateUtil.getDateFromStringB(curMonth + "-" + day));
-            int week = today.get(Calendar.WEEK_OF_MONTH);
+            int week = 1;//today.get(Calendar.WEEK_OF_MONTH);
             curDay = today.get(Calendar.DAY_OF_WEEK);
 
+
+
             //一周第一天是否为星期天
             boolean isFirstSunday = (today.getFirstDayOfWeek() == Calendar.SUNDAY);
             //获取周几
@@ -456,6 +458,15 @@ public class ScheduleClassesStaffV1InnerServiceSMOImpl extends BaseServiceSMO im
             scDay.setDay(day + "");
             //计算 排班
             for (ScheduleClassesDayDto scheduleClassesDayDto1 : scheduleClassesDayDtos) {
+                week = today.get(Calendar.WEEK_OF_MONTH);
+                if("1".equals(scheduleClassesDayDto1.getWeekFlag())){ // 如果是 1 则 周默认为 1
+                    week = 1;
+                }
+
+                if(week > Integer.parseInt(scheduleClassesDayDto1.getWeekFlag())){
+                    week = week % Integer.parseInt(scheduleClassesDayDto1.getWeekFlag());
+                }
+
                 if ((curDay + "").equals(scheduleClassesDayDto1.getDay()) && (week + "").equals(scheduleClassesDayDto1.getWeekFlag())) {
                     tmpScheduleClassesDayDto = scheduleClassesDayDto1;
                 }