public IHttpActionResult UpdateRepgroup(RepgroupModel model) { var response = new DataResponse <EntityRepGroups>(); if (ModelState.IsValid) { var entityRepGroups = new EntityRepGroups(); entityRepGroups.Id = model.Id; entityRepGroups.RepGroupName = model.RepGroupName; entityRepGroups.Description = model.Description; entityRepGroups.SalesDirectorId = model.SalesDirectorId; entityRepGroups.BusinessId = CurrentBusinessId; entityRepGroups.RepGroupManagerIds = new List <int>(); entityRepGroups.SalesDirectorIds = new List <int>(); if (model.IsActive != null) { entityRepGroups.IsActive = model.IsActive.Value; } entityRepGroups.CreatedBy = CurrentUserId; entityRepGroups.CreatedOn = DateTime.UtcNow; foreach (var item in model.SalesDirectorIds) { entityRepGroups.SalesDirectorIds.Add(item); } foreach (var item in model.RepGroupManagerIds) { entityRepGroups.RepGroupManagerIds.Add(item); } response = repository.Update(entityRepGroups); } return(Ok <DataResponse>(response)); }
public IHttpActionResult InsertRepgroupData(EntityRepGroups model) { var response = new DataResponse <EntityRepGroups>(); if (ModelState.IsValid) { model.UpdatedBy = model.CreatedBy = CurrentUserId; model.BusinessId = CurrentBusinessId; if (model.Id > 0) { response = new RepositoryRepGroups().Update(model); } else { response = new RepositoryRepGroups().Insert(model); } return(Ok <DataResponse>(response)); } else { var errorList = ModelState.Where(a => a.Value.Errors.Any()).Select(s => new { Key = s.Key.Split('.').Last(), Message = s.Value.Errors[0].ErrorMessage }); return(Ok <dynamic>(new { Status = HttpStatusCode.BadRequest, Model = errorList })); } }
public DataResponse <EntityRepGroups> Insert(EntityRepGroups entity) { var response = new DataResponse <EntityRepGroups>(); try { base.DBInit(); var model = new Database.RepGroup { BusinessId = entity.BusinessId, RepGroupName = entity.RepGroupName, Description = entity.Description, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn, IsActive = true, //SalesDirectorId = entity.SalesDirectorId, }; if (base.DBSave(model) > 0) { if (entity.SalesDirectorIds != null && entity.SalesDirectorIds.Count() > 0) { foreach (var item in entity.SalesDirectorIds) { DBEntity.RepgroupManagerMappers.Add(new RepgroupManagerMapper { RepGroupId = model.Id, ManagerId = item, UserRole = (int)RepgroupUserType.Director, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn }); DBEntity.SaveChanges(); } } if (entity.RepGroupManagerIds != null && entity.RepGroupManagerIds.Count() > 0) { foreach (var item in entity.RepGroupManagerIds) { DBEntity.RepgroupManagerMappers.Add(new RepgroupManagerMapper { RepGroupId = model.Id, ManagerId = item, UserRole = (int)RepgroupUserType.Manager, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn }); DBEntity.SaveChanges(); } } entity.Id = model.Id; response.CreateResponse(entity, DataResponseStatus.OK); } else { response.CreateResponse(DataResponseStatus.InternalServerError); } } catch (Exception ex) { ex.Log(); } finally { base.DBClose(); } return(response); }
public DataResponse <EntityRepGroups> Update(EntityRepGroups entity) { var response = new DataResponse <EntityRepGroups>(); try { base.DBInit(); entity.UpdatedOn = DateTime.UtcNow; #region Prepare model var model = DBEntity.RepGroups.FirstOrDefault(a => a.Id == entity.Id); model.RepGroupName = entity.RepGroupName; model.Description = entity.Description; model.IsActive = entity.IsActive; model.UpdatedOn = entity.UpdatedOn; model.UpdatedBy = entity.UpdatedBy; //model.SalesDirectorId = entity.SalesDirectorId > 0 ? entity.SalesDirectorId : null; #endregion if (base.DBSaveUpdate(model) > 0) { IEnumerable <RepgroupManagerMapper> RepGroupManagerIds = DBEntity.RepgroupManagerMappers.Where(a => a.RepGroupId == model.Id && a.UserRole == (int)RepgroupUserType.Manager).ToList(); if (RepGroupManagerIds.Count() > 0) { DBEntity.RepgroupManagerMappers.RemoveRange(RepGroupManagerIds); DBEntity.SaveChanges(); } if (entity.RepGroupManagerIds != null && entity.RepGroupManagerIds.Count() > 0) { foreach (var item in entity.RepGroupManagerIds) { DBEntity.RepgroupManagerMappers.Add(new RepgroupManagerMapper { RepGroupId = model.Id, ManagerId = item, UserRole = (int)RepgroupUserType.Manager, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn }); DBEntity.SaveChanges(); } } IEnumerable <RepgroupManagerMapper> RepGroupDirectorsIds = DBEntity.RepgroupManagerMappers.Where(a => a.RepGroupId == model.Id && a.UserRole == (int)RepgroupUserType.Director).ToList(); if (RepGroupDirectorsIds.Count() > 0) { DBEntity.RepgroupManagerMappers.RemoveRange(RepGroupDirectorsIds); DBEntity.SaveChanges(); } if (entity.SalesDirectorIds != null && entity.SalesDirectorIds.Count() > 0) { foreach (var item in entity.SalesDirectorIds) { DBEntity.RepgroupManagerMappers.Add(new RepgroupManagerMapper { RepGroupId = model.Id, ManagerId = item, UserRole = (int)RepgroupUserType.Director, CreatedBy = entity.CreatedBy, CreatedOn = entity.CreatedOn }); DBEntity.SaveChanges(); } } return(GetRepGroupById(model.Id)); } else { response.CreateResponse(DataResponseStatus.InternalServerError); } } catch (Exception ex) { ex.Log(); } finally { base.DBClose(); } return(response); }