1.合同结算审核时,将结算日期按照合同保证金年限计算合同最终付款日期反写合同(合同质量保修期:1月、2月、3月、4月、5月、半年、1年、2年、3年、4年、5年)
S
This commit is contained in:
parent
4ed0a524fa
commit
db5f06c966
|
@ -31,34 +31,62 @@ public class ConsettlebillAuditOPPlugin extends AbstractOperationServicePlugIn {
|
||||||
DynamicObjectCollection qeug_bondentrys = contractbills.getDynamicObjectCollection("qeug_bondentry");
|
DynamicObjectCollection qeug_bondentrys = contractbills.getDynamicObjectCollection("qeug_bondentry");
|
||||||
for (DynamicObject qeugBondentry : qeug_bondentrys) {
|
for (DynamicObject qeugBondentry : qeug_bondentrys) {
|
||||||
String qeugYear = qeugBondentry.getString("qeug_year");//年限
|
String qeugYear = qeugBondentry.getString("qeug_year");//年限
|
||||||
|
//1月、2月、3月、4月、5月、半年、1年、2年、3年、4年、5年
|
||||||
|
Date updatedDate = null; // 声明一个变量用于保存更新后的日期
|
||||||
|
|
||||||
switch (qeugYear) {
|
switch (qeugYear) {
|
||||||
case "A":
|
case "A":
|
||||||
//1年
|
updatedDate = updateBizDate(bizdate, 1); // 1个月
|
||||||
if (null !=bizdate) {
|
|
||||||
// 将 Date 转换为 LocalDate
|
|
||||||
LocalDate localBizDate = bizdate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
|
||||||
// 加上一年
|
|
||||||
LocalDate newBizDate = localBizDate.plusYears(1);
|
|
||||||
//转换回 Date 类型
|
|
||||||
Date updatedBizDate = Date.from(newBizDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
|
|
||||||
qeugBondentry.set("qeug_finalpaymentdate",updatedBizDate);//最终付款日期
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
case "B":
|
case "B":
|
||||||
//半年
|
updatedDate = updateBizDate(bizdate, 2); // 2个月
|
||||||
if (null !=bizdate) {
|
break;
|
||||||
LocalDate localBizDate = bizdate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
case "C":
|
||||||
// 加上六个月
|
updatedDate = updateBizDate(bizdate, 3); // 3个月
|
||||||
LocalDate newBizDate = localBizDate.plusMonths(6);
|
break;
|
||||||
Date updatedBizDate = Date.from(newBizDate.atStartOfDay(ZoneId.systemDefault()).toInstant());
|
case "D":
|
||||||
qeugBondentry.set("qeug_finalpaymentdate",updatedBizDate);//最终付款日期
|
updatedDate = updateBizDate(bizdate, 4); // 4个月
|
||||||
}
|
break;
|
||||||
|
case "E":
|
||||||
|
updatedDate = updateBizDate(bizdate, 5); // 5个月
|
||||||
|
break;
|
||||||
|
case "F":
|
||||||
|
updatedDate = updateBizDate(bizdate, 6); // 6个月
|
||||||
|
break;
|
||||||
|
case "G":
|
||||||
|
updatedDate = updateBizDate(bizdate, 12); // 一年
|
||||||
|
break;
|
||||||
|
case "H":
|
||||||
|
updatedDate = updateBizDate(bizdate, 24); // 两年
|
||||||
|
break;
|
||||||
|
case "I":
|
||||||
|
updatedDate = updateBizDate(bizdate, 36); // 三年
|
||||||
|
break;
|
||||||
|
case "J":
|
||||||
|
updatedDate = updateBizDate(bizdate, 48); // 四年
|
||||||
|
break;
|
||||||
|
case "K":
|
||||||
|
updatedDate = updateBizDate(bizdate, 60); // 五年
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
// 在 switch 语句外设置最终付款日期
|
||||||
|
if (updatedDate != null) {
|
||||||
|
qeugBondentry.set("qeug_finalpaymentdate", updatedDate); // 设置最终付款日期
|
||||||
|
}
|
||||||
}
|
}
|
||||||
SaveServiceHelper.save(new DynamicObject[]{contractbills});
|
SaveServiceHelper.save(new DynamicObject[]{contractbills});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Date updateBizDate(Date bizdate, int monthsToAdd) {
|
||||||
|
if (bizdate != null) {
|
||||||
|
LocalDate localBizDate = bizdate.toInstant().atZone(ZoneId.systemDefault()).toLocalDate(); // 将 Date 转换为 LocalDate
|
||||||
|
LocalDate newBizDate = localBizDate.plusMonths(monthsToAdd); // 根据传入的月份数加上月份
|
||||||
|
return Date.from(newBizDate.atStartOfDay(ZoneId.systemDefault()).toInstant()); // 返回更新后的 Date 类型
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue