Ejemplo n.º 1
0
        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));
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        public static object PostNewSkills(SkillsInformationVm data, bool validateOnly)
        {
            var mr = Mgr.PostNewSkills(Utils.LoggedUser, ref data, validateOnly);

            return(Utils.ServiceResponse(PageCode, mr));
        }