public ModelResponse PostNewSkills(UserInfo user, ref SkillsInformationVm vm, bool validateOnly) { try { //Authorization if (!IsAuthorized(user)) { return(new ModelResponse(101)); } //Validations if (vm.Skills.Count < 1 || vm.Skills.Any(s => s.Industry.id.IsNotASubCode() || s.Level.id.IsNotASubCode()) || vm.Skills.Any(s => !s.IsNew && s.Skill.id.IsNotASubCode())) { return(new ModelResponse(1)); } if (!validateOnly) { vm.PortalUsersID = (long)user.PortalUserId; Repo.PostNewSkills(user, ref vm); } } catch (Exception ex) { return(new ModelResponse(ex)); } return(new ModelResponse(0, vm.Id)); }
public long PostNewSkills(UserInfo user, ref SkillsInformationVm vm) { using (var db = new LMISEntities()) using (var transaction = db.Database.BeginTransaction()) { try { //var id = vm.Id; //if (id > 0) //Update //{ // var dr5 = db.IndividualSkillsDetails // .Where(r => r.IndividualSkillsDetailsID == id) // .ToList(); // db.IndividualSkillsDetails.RemoveRange(dr5); // var dr6 = db.IndividualOtherSkills // .Where(r => r.IndividualOtherSkillsId == id) // .ToList(); // db.IndividualOtherSkills.RemoveRange(dr6); //} //else //Insert //{ var dr5 = db.IndividualSkillsDetails.Where(r => r.PortalUsersID == user.PortalUserId).ToList(); db.IndividualSkillsDetails.RemoveRange(dr5); var dr6 = db.IndividualOtherSkills .Where(r => r.PortalUsersID == user.PortalUserId) .ToList(); db.IndividualOtherSkills.RemoveRange(dr6); foreach (var r in vm.Skills.Where(a => !a.IsNew)) { db.IndividualSkillsDetails.Add(new IndividualSkillsDetail() { IndustryID = r.Industry.id, SkillID = r.Skill.id, SkillLevelID = r.Level.id, SkillTypeID = r.Type == null || string.IsNullOrWhiteSpace(r.Type.id) ? null : r.Type.id, YearsOf_Experience = r.YOfExperience, PortalUsersID = user.PortalUserId, PostDate = DateTime.Today }); } foreach (var r in vm.Skills.Where(a => a.IsNew)) { db.IndividualOtherSkills.Add(new IndividualOtherSkill() { IndustryId = r.Industry.id, OtherSkill = r.Skill.desc, SkillLevelId = r.Level.id, IsReviewed = false, PortalUsersID = user.PortalUserId }); } //} var indvidual = db.IndividualDetails.Single(s => s.PortalUsersID == user.PortalUserId); indvidual.Is_Approved = (int)Approval.Pending; db.SaveChanges(); transaction.Commit(); } catch (Exception ex) { transaction.Rollback(); ExceptionDispatchInfo.Capture(ex).Throw(); } } return(vm.Id); }
public static object PostNewSkills(SkillsInformationVm data, bool validateOnly) { var mr = Mgr.PostNewSkills(Utils.LoggedUser, ref data, validateOnly); return(Utils.ServiceResponse(PageCode, mr)); }