コード例 #1
0
 public void Save(WorkPermit entity)
 {
     if (_workPermits.FindById(entity.Id) == null)
     {
         _workPermits.Insert(entity);
     }
     else
     {
         _workPermits.Update(entity);
     }
 }
コード例 #2
0
        public WorkPermit GetPersistentEntry()
        {
            var permit = new WorkPermit
            {
                Id          = Id,
                Name        = Name,
                Description = Description,
                PeriodFrom  = PeriodFrom,
                PeriodTo    = PeriodTo
            };

            return(permit);
        }
コード例 #3
0
 public WorkPermitViewModel(WorkPermit workPermit)
 {
     if (workPermit != null)
     {
         Id          = workPermit.Id;
         Name        = workPermit.Name;
         Description = workPermit.Description;
         PeriodFrom  = workPermit.PeriodFrom;
         PeriodTo    = workPermit.PeriodTo;
     }
     else
     {
         Id = Guid.NewGuid();
     }
 }
コード例 #4
0
        public void TestGetWorkPermit()
        {
            var validWorkPermit = new WorkPermit()
            {
                Expiry = DateTime.Now.AddDays(5)
            };

            var dict = new Dictionary <string, Employee>
            {
                ["Manuel"] = new Employee
                {
                    Id         = "Manuel",
                    WorkPermit = F.Some(validWorkPermit)
                }
            };

            var workPermit = GetWorkPermit(dict, "Manuel");

            Assert.AreEqual(F.Some(validWorkPermit), workPermit);
        }
コード例 #5
0
        public void TestGetWorkPermitWithValidity()
        {
            var validWorkPermit = new WorkPermit()
            {
                Expiry = DateTime.Today.AddDays(7)
            };

            var dict = new Dictionary <string, Employee>
            {
                ["Manuel"] = new Employee
                {
                    Id         = "Manuel",
                    WorkPermit = F.Some(validWorkPermit)
                }
            };

            var workPermit = GetWorkPermit(dict, "Manuel", x => x.Expiry > DateTime.Today);

            Assert.AreEqual(F.Some(validWorkPermit), workPermit);
        }
コード例 #6
0
        public bool InsertUpdateWorkPermit(WorkPermitViewModel model)
        {
            using (SamajkalyanEntities ent = new SamajkalyanEntities())
            {
                try
                {
                    var workPermitRow = ent.WorkPermits.Where(x => x.WorkPermitId == model.WorkPermitId).FirstOrDefault();
                    //_context.Database.Connection.Open();
                    //_context.Database.Connection.BeginTransaction();
                    if (workPermitRow == null)
                    {
                        workPermitRow = new WorkPermit();
                    }
                    ;
                    // workPermitRow.WorkPermitId = model.WorkPermitId;
                    workPermitRow.GA_Id                       = model.GA_Id;
                    workPermitRow.PA_Id                       = model.PA_Id;
                    workPermitRow.WorkPermitTypeId            = model.WorkPermitTypeId;
                    workPermitRow.NameOfApplicant             = model.NameOfApplicant;
                    workPermitRow.Council_sRegistrationNumber = model.Council_sRegistrationNumber;
                    workPermitRow.CouncilRegistrationDate     = model.CouncilRegistrationDate;
                    workPermitRow.CouncilRegistrationDateNp   = model.CouncilRegistrationDateNp;
                    workPermitRow.Country                     = model.Country;
                    workPermitRow.PassportNumber              = model.PassportNumber;
                    workPermitRow.VisaDuration                = model.VisaDuration;
                    workPermitRow.ApplicationDesingation      = model.ApplicationDesingation;
                    workPermitRow.DecisionDate                = model.DecisionDate;
                    workPermitRow.VisaType                    = model.VisaType;
                    workPermitRow.Remarks                     = model.Remarks;

                    workPermitRow.CreatedBy   = model.CreatedBy;
                    workPermitRow.CreatedDate = model.CreatedDate;
                    //deploymentRow.Status = true;
                    if (model.WorkPermitId == 0)
                    {
                        // generalAgreementRow.Status = false;
                        ent.WorkPermits.Add(workPermitRow);
                        ent.SaveChanges();
                    }
                    else
                    {
                        // deploymentRow.Status = dmodel.Status ?? false;
                        workPermitRow.UpDatedBy   = model.UpDatedBy;
                        workPermitRow.UpdatedDate = model.UpdatedDate;
                        ent.WorkPermits.Attach(workPermitRow);
                        ent.Entry(workPermitRow).State = EntityState.Modified;
                        ent.SaveChanges();
                    }
                    if (model.WorkPermitId <= 0)
                    {
                        model.WorkPermitId = ent.Database.SqlQuery <WorkPermitViewModel>("select * from WorkPermit where WorkPermitId=(select max (WorkPermitId) from WorkPermit )").ToList().FirstOrDefault().WorkPermitId;
                        //employeeRow.EmpId=employeeRow.EmpId != 0 ? employeeRow.EmpId : empModel.EmpId;
                    }

                    #region WP_FAmily

                    using (var tempContext = new SamajkalyanEntities())
                    {
                        var deletelist = tempContext.WpaFamilies.Where(x => x.WorkPermitId == model.WorkPermitId).ToList();
                        if (deletelist.Count > 0)
                        {
                            foreach (var item in deletelist)
                            {
                                if (model.WpaFamilyViewModelList == null)
                                {
                                    model.WpaFamilyViewModelList = new List <WpaFamilyViewModel>();
                                }
                                var isExists = model.WpaFamilyViewModelList.Where(x => x.WPAFamilyId == item.WPAFamilyId).FirstOrDefault();
                                if (isExists == null)
                                {
                                    tempContext.WpaFamilies.Remove(item);
                                    tempContext.SaveChanges();
                                }
                            }
                        }
                    }

                    if (model.WpaFamilyViewModelList != null)
                    {
                        foreach (var item in model.WpaFamilyViewModelList)
                        {
                            WpaFamily newRow = new WpaFamily();
                            newRow.WorkPermitId   = model.WorkPermitId;
                            newRow.WPAFamilyId    = item.WPAFamilyId;
                            newRow.Name           = item.Name;
                            newRow.Country        = item.Country;
                            newRow.PassportNO     = item.PassportNO;
                            newRow.VisaDuration   = item.VisaDuration;
                            newRow.VisaType       = item.VisaType;
                            newRow.DicisionDate   = item.DeletdDate;
                            newRow.DicisionDateNp = item.DicisionDateNp;
                            newRow.Relation       = item.Relation;
                            newRow.remark         = item.remark;
                            //newRow.NoOfDep = item.NoOfDep;

                            if (item.WPAFamilyId == 0)
                            {
                                ent.WpaFamilies.Add(newRow);
                                ent.SaveChanges();
                            }
                            else
                            {
                                ent.WpaFamilies.Attach(newRow);
                                ent.Entry(newRow).State = EntityState.Modified;
                                ent.SaveChanges();
                            }
                        }
                    }
                    #endregion
                }



                catch (Exception ex)
                {
                    return(false);
                }
            }

            return(true);
        }