/// <summary> /// Insert List PersonTechnology /// </summary> /// <param name="personTechnologies"></param> /// <returns></returns> public async Task <int> InsertListPersonTechnology(List <PersonTechnology> personTechnologies) { var result = 0; List <PersonTechnology> personTechnologiesUpdate = new List <PersonTechnology>(); List <PersonTechnology> personTechnologiesInsert = new List <PersonTechnology>(); foreach (var item in personTechnologies) { if (await _skillRepository.CheckPersonTechnologyOnDeleteAsync(item)) { item.UpdatedAt = DateTime.Now; personTechnologiesUpdate.Add(item); } else { if (!await _skillRepository.CheckPersonTechnologyAsync(item)) { personTechnologiesInsert.Add(item); } } } if (personTechnologiesUpdate.Count > 0) { result += await _skillRepository.UpdatePersonTechnologyToInsertAsync(personTechnologiesUpdate); } result += await _skillRepository.InsertListPersonTechnologyAsync(personTechnologiesInsert); return(result); }