private void addEmployeePlans( List<EmployeePlan> employeePlans, Integer year, Integer month, Employee employee, JsonNode jsonNode) { final Map<JsonStringNode, JsonNode> fields = jsonNode.getFields(); JsonStringNode field; for (Map.Entry<JsonStringNode, TSEnum> entry : PLAN_TYPE_MAP.entrySet()) { field = entry.getKey(); final EmployeePlan employeePlan = createEmployeePlanIfNeed( year, month, employee, dictionaryItemService.find(entry.getValue().getId())); if (fields.containsKey(field)) { employeePlan.setValue(JsonUtil.getFloatNumberValue(jsonNode, field.getText())); employeePlans.add(employeePlan); } } // KSS APLANATS-850 Удалять будем только существующие записи с value=0. // Удаление будет вызвано в методе // com.aplana.timesheet.service.EmployeePlanService.mergeProjectPlans }
private void addEmployeeProjectPlans( List<EmployeeProjectPlan> employeeProjectPlans, Integer year, Integer month, Employee employee, JsonNode jsonNode) { // employeeProjectPlanService.remove(employee, year, month); KSS APLANATS-850 Удалять будем // только существующие записи с value=0. Удаление будет вызвано в методе // com.aplana.timesheet.service.EmployeeProjectPlanService.mergeEmployeeProjectPlans if (jsonNode.getFields().containsKey(PROJECTS_PLANS_FIELD)) { for (JsonNode node : jsonNode.getArrayNode(PROJECTS_PLANS)) { employeeProjectPlans.add(createEmployeeProjectPlanIfNeed(year, month, employee, node)); } } }