private async Task <bool> CreateUsersHierarchy(UsersDtoCreateList li) { bool res = true; try { Users parentUsers = null; if (li.ParentId != Guid.Empty && li.ParentId != null) { parentUsers = await Work.Users.Get(x => x.UsersId == li.ParentId); } Users user = new Users() { FkUsers = parentUsers, UsersId = Guid.NewGuid(), UsersCode = li.LiUsers.UsersCode, UsersLastName = li.LiUsers.UsersLastName, UsersName = li.LiUsers.UsersName, UsersBirthDate = li.LiUsers.UsersBirthDate, UsersDateLeave = li.LiUsers.UsersDateLeave, UsersGenderCode = li.LiUsers.UsersGenderCode, UsersJoinDate = li.LiUsers.UsersJoinDate, UsersMail = li.LiUsers.UsersMail, UsersMailIntern = li.LiUsers.UsersMailIntern, UsersPersonalNumber = li.LiUsers.UsersPersonalNumber, UsersPhoneNumber = li.LiUsers.UsersPhoneNumber, UsersPosteName = li.LiUsers.UsersPosteName, UsersState = li.LiUsers.UsersState, }; await Work.Users.Add(user); await Work.Complete(); ///// Create the hierarchy if (li.LiUsers.SubUsers != null) { foreach (var item in li.LiUsers.SubUsers) { await CreateSub(user, item); } } } catch (Exception e) { res = false; } return(res); }
public async Task <ActionResult> Post([FromBody] UsersDtoCreateList li) { bool res = await CreateUsersHierarchy(li); if (res == false) { return(new JsonResult(new ErrorDetails { StatusCode = 500, Message = "une Erreur c'est produit lors de l'ajout des utilisateurs." })); } else { return(Ok()); } }