zhangyao 2 месяцев назад
Родитель
Сommit
248e644c64

+ 20 - 9
com.awspaas.user.apps.donenow_ctt/src/com/awspaas/user/apps/donenow_ctt/service/contractService.java

@@ -176,7 +176,8 @@ public class contractService {
                 } catch (Exception e) {
 
                     e.printStackTrace();
-                    contractServiceLogger.info("info--失败。。。");
+
+                    contractServiceLogger.info("新增服务--info--失败。。。" + e.getMessage());
 
                     resultDto.put("success", false);
                     resultDto.put("msg", e.getMessage());
@@ -189,7 +190,7 @@ public class contractService {
             return resultDto;
         } catch (Exception e) {
             e.printStackTrace();
-            contractServiceLogger.info("info--失败。。。");
+            contractServiceLogger.info("合同报错-info--失败。。。");
         }
         resultDto.put("success", false);
         return resultDto;
@@ -303,6 +304,10 @@ public class contractService {
                 //如果服务周期的结束时间不等于合同的结束时间,则需要延长服务周期或缩短
                 String PERIOD = service.getString("PERIOD");//服务起止日期
                 String ADJUST_PERIOD = service.getString("ADJUST_PERIOD");//服务调整的起止日期
+
+                contractServiceLogger.info("PERIOD---" + PERIOD);
+                contractServiceLogger.info("ADJUST_PERIOD---" + ADJUST_PERIOD);
+
                 LocalDate PERIOD_END;
                 if (StringUtils.isNotBlank(PERIOD)) {
                     PERIOD_END = getLocalDate(PERIOD.split("~")[1]);
@@ -327,11 +332,11 @@ public class contractService {
                 contractServiceLogger.info("合同结束日期--" + LocalDateYYYYMMDD(END_DATE));
 
 
-                if (PERIOD_END.isEqual(END_DATE)) {
+                if (!PERIOD_END.isEqual(END_DATE)) {
                     if (PERIOD_END.isBefore(END_DATE)) {
                         contractServiceLogger.info("服务周期延长--" + service.getString("NAME"));
                         //延长
-                        List<BO> servicePeriodList = SDK.getBOAPI().query("BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD").connection(conn).addQuery("CONTRACT_SERVICE_ID =", service.getString("CONTRACT_SERVICE_ID")).addQuery("PERIOD_END_DATE >=", PERIOD_END).orderBy("PERIOD_BEGIN_DATE").desc().list();
+                        List<BO> servicePeriodList = SDK.getBOAPI().query("BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD").connection(conn).addQuery("CONTRACT_SERVICE_ID =", service.getId()).addQuery("PERIOD_END_DATE >=", LocalDateYYYYMMDD(PERIOD_END)).orderBy("PERIOD_BEGIN_DATE").desc().list();
 
                         BO servicePeriod = servicePeriodList.get(0);
                         LocalDate period_begin_date = getLocalDate(servicePeriod.get("PERIOD_BEGIN_DATE"));
@@ -413,10 +418,10 @@ public class contractService {
                                 }
                             }
                         }
-                    } else {
+                    } else if (PERIOD_END.isAfter(END_DATE)) {
                         contractServiceLogger.info("服务周期缩短--" + service.getString("NAME"));
                         //缩短
-                        List<BO> servicePeriodList = SDK.getBOAPI().query("BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD").connection(conn).addQuery("CONTRACT_SERVICE_ID =", service.getString("CONTRACT_SERVICE_ID")).addQuery("PERIOD_END_DATE >=", END_DATE).orderBy("PERIOD_BEGIN_DATE").asc().list();
+                        List<BO> servicePeriodList = SDK.getBOAPI().query("BO_EU_DNCTT_CONTRACT_SERVICE_PERIOD").connection(conn).addQuery("CONTRACT_SERVICE_ID =", service.getId()).addQuery("PERIOD_END_DATE >=", LocalDateYYYYMMDD(END_DATE)).orderBy("PERIOD_BEGIN_DATE").asc().list();
 
                         BO servicePeriod = servicePeriodList.get(0);
                         servicePeriod.set("PERIOD_END_DATE", END_DATE);
@@ -448,13 +453,16 @@ public class contractService {
             conn.commit();
             return true;
         } catch (SQLException e) {
+
+            contractServiceLogger.info("AddServiceServiceBundle--error--失败。。。" + e.getMessage());
+
             e.printStackTrace();
-            conn.rollback();
 
-            contractServiceLogger.error("AddServiceServiceBundle--error--失败。。。", e);
+            conn.rollback();
 
         } finally {
-            if (conn != null) DBSql.close(conn);
+            if (conn != null)
+                DBSql.close(conn);
         }
         return false;
     }
@@ -839,6 +847,9 @@ public class contractService {
 
         //更新合同服务上的
         DBSql.update(conn, "update BO_EU_DNCTT_CONTRACT_SERVICE set PERIOD=?,ADJUST_PERIOD=? where ID=? and BINDID=?", new Object[]{PERIOD, ADJUST_PERIOD, service.get("ID"), service.get("BINDID")});
+        service.set("PERIOD", PERIOD);
+        service.set("ADJUST_PERIOD", ADJUST_PERIOD);
+
         return true;
     }