|
@@ -209,13 +209,13 @@ public class InsuranceApplicationController {
|
|
|
DateTime endTime = new DateTime(insuranceApplication.getEndTime());
|
|
|
DateTime startTime = new DateTime(insuranceApplication.getStartTime());
|
|
|
|
|
|
- insuranceApplicationDTO.setMonthNumber(Months.monthsBetween(startTime, endTime).getMonths());
|
|
|
+ insuranceApplicationDTO.setMonthNumber(Months.monthsBetween(startTime, endTime.plusDays(1)).getMonths());
|
|
|
} else {
|
|
|
//先生成主键,便于参保人员关联
|
|
|
insuranceApplicationDTO.setApplicationId(UUID.randomUUID().toString());
|
|
|
|
|
|
insuranceApplicationDTO.setCompanyId(company.getId());
|
|
|
- insuranceApplicationDTO.setInsuredName(company.getLegalName());
|
|
|
+ insuranceApplicationDTO.setInsuredName(company.getName());
|
|
|
insuranceApplicationDTO.setInsuredTel(company.getLegalPhone());
|
|
|
insuranceApplicationDTO.setCompanyName(company.getName());
|
|
|
insuranceApplicationDTO.setBusinessNature(company.getBusinessNature());
|
|
@@ -277,23 +277,6 @@ public class InsuranceApplicationController {
|
|
|
//险种名称
|
|
|
acceptInsuranceDTO.setInsuranceDefName(insuranceDefinition.getName());
|
|
|
|
|
|
- //险种关联限额
|
|
|
- List<InsuranceDefinitionLimit> insuranceDefinitionLimits = insuranceDefinitionLimitService.findByDefinitionId(insuranceApplication.getDefinitionId());
|
|
|
-
|
|
|
- Map<String,Object> varsMap = new HashMap<>();
|
|
|
- varsMap.put("num",insuranceApplication.getInsuredNumber());
|
|
|
-
|
|
|
- for(InsuranceDefinitionLimit insuranceDefinitionLimit : insuranceDefinitionLimits){
|
|
|
- //限额这里可能是公式,需要带入人数
|
|
|
- String limit = VelocityHelper.format(insuranceDefinitionLimit.getLimit(),varsMap);
|
|
|
- insuranceDefinitionLimit.setLimit(limit);
|
|
|
-
|
|
|
- String unit = VelocityHelper.format(insuranceDefinitionLimit.getUnit(),varsMap);
|
|
|
- insuranceDefinitionLimit.setUnit(unit);
|
|
|
- }
|
|
|
-
|
|
|
- acceptInsuranceDTO.setInsuranceDefLimitList(insuranceDefinitionLimits);
|
|
|
-
|
|
|
//关联岗位
|
|
|
List<InsuranceJobs> InsuranceJobsList = insuranceJobsService.findByDefinitionId(insuranceApplication.getDefinitionId());
|
|
|
|
|
@@ -304,7 +287,7 @@ public class InsuranceApplicationController {
|
|
|
acceptInsuranceDTO.setStartTime(insuranceApplication.getStartTime());
|
|
|
|
|
|
//投保总月份
|
|
|
- int months = Months.monthsBetween(startTime, endTime).getMonths();
|
|
|
+ int months = Months.monthsBetween(startTime, endTime.plusDays(1)).getMonths();
|
|
|
|
|
|
BigDecimal totalAmount = new BigDecimal(0);
|
|
|
int totalNumber = 0;
|
|
@@ -337,12 +320,29 @@ public class InsuranceApplicationController {
|
|
|
|
|
|
acceptInsuranceDTO.setInsuranceJobsList(insuranceJobsList);
|
|
|
|
|
|
- if(insuranceApplication.getInsuranceFee()!=null){
|
|
|
- acceptInsuranceDTO.setTotalAmount(insuranceApplication.getInsuranceFee());
|
|
|
+ //险种关联限额
|
|
|
+ List<InsuranceDefinitionLimit> insuranceDefinitionLimits = insuranceDefinitionLimitService.findByDefinitionId(insuranceApplication.getDefinitionId());
|
|
|
+
|
|
|
+ Map<String,Object> varsMap = new HashMap<>();
|
|
|
+ varsMap.put("num",totalNumber);
|
|
|
+
|
|
|
+ for(InsuranceDefinitionLimit insuranceDefinitionLimit : insuranceDefinitionLimits){
|
|
|
+ //限额这里可能是公式,需要带入人数
|
|
|
+ String limit = VelocityHelper.format(insuranceDefinitionLimit.getLimit(),varsMap);
|
|
|
+ insuranceDefinitionLimit.setLimit(limit);
|
|
|
+
|
|
|
+ String unit = VelocityHelper.format(insuranceDefinitionLimit.getUnit(),varsMap);
|
|
|
+ insuranceDefinitionLimit.setUnit(unit);
|
|
|
}
|
|
|
- else {
|
|
|
+
|
|
|
+ acceptInsuranceDTO.setInsuranceDefLimitList(insuranceDefinitionLimits);
|
|
|
+
|
|
|
+// if(insuranceApplication.getInsuranceFee()!=null){
|
|
|
+// acceptInsuranceDTO.setTotalAmount(insuranceApplication.getInsuranceFee());
|
|
|
+// }
|
|
|
+// else {
|
|
|
acceptInsuranceDTO.setTotalAmount(totalAmount);
|
|
|
- }
|
|
|
+// }
|
|
|
|
|
|
msgResult.setData(acceptInsuranceDTO);
|
|
|
msgResult.setResult(true);
|
|
@@ -377,7 +377,7 @@ public class InsuranceApplicationController {
|
|
|
DateTime startTime = new DateTime(insuranceApplication.getStartTime());
|
|
|
|
|
|
//投保总月份
|
|
|
- int months = Months.monthsBetween(startTime, endTime).getMonths();
|
|
|
+ int months = Months.monthsBetween(startTime, endTime.plusDays(1)).getMonths();
|
|
|
|
|
|
BigDecimal totalAmount = new BigDecimal(0);
|
|
|
int totalNumber = 0;
|
|
@@ -429,7 +429,7 @@ public class InsuranceApplicationController {
|
|
|
insurancePolicy.setEffectiveDate(startTime.toString("yyyyMM"));
|
|
|
|
|
|
insurancePolicy.setStartTime(startTime.toDate());
|
|
|
- insurancePolicy.setEndTime(startTime.plusMonths(1).toDate());
|
|
|
+ insurancePolicy.setEndTime(startTime.plusMonths(1).plusDays(-1).toDate());
|
|
|
insurancePolicy.setStatus(String.valueOf(PolicyStatus.PendingTrial.getValue()));
|
|
|
insurancePolicy.setPromoter(company.getPromoter()); //保存一份推广人,以免企业退广人发生变化
|
|
|
|