public Int32 InsertHotWorksPermit(Models.HotWorksPermit model)
        {
            lock (locker)
            {
                var insert = database.Insert(model);

                return(insert);
            }
        }
        public Int32 UpdateHotWorksPermit(Models.HotWorksPermit model)
        {
            lock (locker)
            {
                var update = database.Update(model);

                return(update);
            }
        }
Пример #3
0
        public async Task <ViewModels.IssueOfPermit> GetSection(Models.HotWorksPermit hotWorksPermit)
        {
            var issueTime       = IssueTime.NullableTime;
            var issuePermitTime = IssuePermitTime.NullableTime;
            var issueExpiryTime = IssueExpiryTime.NullableTime;

            if (issueTime == null)
            {
                issueTime = TimeSpan.Zero;
            }

            if (issuePermitTime == null)
            {
                issuePermitTime = TimeSpan.Zero;
            }

            if (issueExpiryTime == null)
            {
                issueExpiryTime = TimeSpan.Zero;
            }

            ViewModels.IssueOfPermit Issue = new ViewModels.IssueOfPermit
            {
                IssuePrintName        = IssueName.Text,
                IssueCompany          = IssueCompany.Text,
                IssueJobTitle         = IssueJobTitle.Text,
                IssueDate             = IssueDatePicker.Date,
                IssueTime             = issueTime,
                IssueTimePermit       = issuePermitTime,
                IssueExpiryTimePermit = issueExpiryTime
            };

            if (hotWorksPermit != null)
            {
                var worksPermitObject = JsonConvert.DeserializeObject <HotWorkPermitViewModel>(hotWorksPermit.Content);

                if (worksPermitObject.IssueOfPermit.IssueSigned != null)
                {
                    Issue.IssueSigned = worksPermitObject.IssueOfPermit.IssueSigned;
                }
                else
                {
                    var image = await IssueSignature.GetImageStreamAsync(SignatureImageFormat.Png);

                    if (image != null)
                    {
                        byte[] arr;

                        using (var ms = new MemoryStream())
                        {
                            await image.CopyToAsync(ms);

                            arr = ms.ToArray();
                        }

                        Issue.IssueSigned = arr;
                    }
                }
            }
            else
            {
                var image = await IssueSignature.GetImageStreamAsync(SignatureImageFormat.Png);

                if (image != null)
                {
                    byte[] arr;

                    using (var ms = new MemoryStream())
                    {
                        await image.CopyToAsync(ms);

                        arr = ms.ToArray();
                    }

                    Issue.IssueSigned = arr;
                }
            }

            return(Issue);
        }
        public async Task <ViewModels.ReturnOfPermit> GetSection(Models.HotWorksPermit hotWorksPermit)
        {
            var returnTime = ReturnTime.NullableTime;

            if (returnTime == null)
            {
                returnTime = TimeSpan.Zero;
            }

            ViewModels.ReturnOfPermit ret = new ViewModels.ReturnOfPermit
            {
                ReturnMinutes   = ReturnMinutesEntry.Text,
                ReturnPrintName = ReturnName.Text,
                ReturnCompany   = ReturnCompany.Text,
                ReturnJobTitle  = ReturnJobTitle.Text,
                ReturnDate      = ReturnDatePicker.Date,
                ReturnTime      = returnTime,
                ReturnCancelled = ReturnCancelledCheckbox.IsChecked,
                ReturnCompleted = ReturnCompletedCheckbox.IsChecked
            };

            if (hotWorksPermit != null)
            {
                var worksPermitObject = JsonConvert.DeserializeObject <HotWorkPermitViewModel>(hotWorksPermit.Content);

                if (worksPermitObject.ReturnOfPermit.ReturnSigned != null)
                {
                    ret.ReturnSigned = worksPermitObject.ReturnOfPermit.ReturnSigned;
                }
                else
                {
                    var image = await ReturnSignature.GetImageStreamAsync(SignatureImageFormat.Png);

                    if (image != null)
                    {
                        byte[] arr;

                        using (var ms = new MemoryStream())
                        {
                            await image.CopyToAsync(ms);

                            arr = ms.ToArray();
                        }

                        ret.ReturnSigned = arr;
                    }
                }
            }
            else
            {
                var image = await ReturnSignature.GetImageStreamAsync(SignatureImageFormat.Png);

                if (image != null)
                {
                    byte[] arr;

                    using (var ms = new MemoryStream())
                    {
                        await image.CopyToAsync(ms);

                        arr = ms.ToArray();
                    }

                    ret.ReturnSigned = arr;
                }
            }

            return(ret);
        }
Пример #5
0
        private async void SaveHotWorksPermitToDatabase(Boolean displayAlert)
        {
            try
            {
                ApplyActivityIndicator();

                var staff          = App.StaffDatabase.GetStaffById(Convert.ToInt32(App.SettingsDatabase.GetSetting("AssignedStaffId").Value));
                var hotWorksPermit = App.HotWorksPermitDatabase.GetHotWorksPermitById(Convert.ToInt32(Id.Text));

                var timeSpan = new TimeSpan(0, 0, 0, 0, 0);

                var model = new HotWorkPermitViewModel();

                model.PermitNo     = PermitNumberEntry.Text;
                model.SiteName     = SiteNameEntry.Text;
                model.LocationArea = LocationEntry.Text;
                model.EquipmentPlantToBeWorkedOn = EquipmentEntry.Text;
                model.NatureOfWork = NatureOfWorkEntry.Text;

                var RequestAccordion = await RequestSection.GetSection(hotWorksPermit);

                var Request = new RequestOfPermit()
                {
                    RequestMinutes   = RequestAccordion.RequestMinutes,
                    RequestSigned    = RequestAccordion.RequestSigned,
                    RequestPrintName = RequestAccordion.RequestPrintName,
                    RequestCompany   = RequestAccordion.RequestCompany,
                    RequestJobTitle  = RequestAccordion.RequestJobTitle,
                    RequestDate      = RequestAccordion.RequestDate,
                    RequestTime      = RequestAccordion.RequestTime
                };

                model.RequestOfPermit = Request;
                var IssueAccordion = await IssueSection.GetSection(hotWorksPermit);

                var Issue = new IssueOfPermit()
                {
                    IssueSigned           = IssueAccordion.IssueSigned,
                    IssuePrintName        = IssueAccordion.IssuePrintName,
                    IssueCompany          = IssueAccordion.IssueCompany,
                    IssueJobTitle         = IssueAccordion.IssueJobTitle,
                    IssueDate             = IssueAccordion.IssueDate,
                    IssueTime             = IssueAccordion.IssueTime,
                    IssueTimePermit       = IssueAccordion.IssueTimePermit,
                    IssueExpiryTimePermit = IssueAccordion.IssueExpiryTimePermit,
                };

                model.IssueOfPermit = Issue;
                var ReturnAccordion = await ReturnSection.GetSection(hotWorksPermit);

                var Return = new ReturnOfPermit()
                {
                    ReturnMinutes   = ReturnAccordion.ReturnMinutes,
                    ReturnSigned    = ReturnAccordion.ReturnSigned,
                    ReturnPrintName = ReturnAccordion.ReturnPrintName,
                    ReturnCompany   = ReturnAccordion.ReturnCompany,
                    ReturnJobTitle  = ReturnAccordion.ReturnJobTitle,
                    ReturnDate      = ReturnAccordion.ReturnDate,
                    ReturnTime      = ReturnAccordion.ReturnTime,
                    ReturnCancelled = ReturnAccordion.ReturnCancelled,
                    ReturnCompleted = ReturnAccordion.ReturnCompleted
                };

                model.ReturnOfPermit = Return;

                var ChecklistAccordion = ChecklistSection.GetSection();

                model.PermitChecklist = ChecklistAccordion;

                var modelContent = JsonConvert.SerializeObject(model).ToString();

                var m = new Models.HotWorksPermit()
                {
                    Content      = modelContent,
                    CreatedDate  = PermitDate.Date,
                    IsDeleted    = false,
                    OfficeId     = null,
                    SentToOffice = false,
                    StaffId      = staff.Id
                };

                if (!String.IsNullOrEmpty(Id.Text))
                {
                    m.Id = Convert.ToInt32(Id.Text);

                    App.HotWorksPermitDatabase.UpdateHotWorksPermit(m);

                    if (displayAlert)
                    {
                        ResetActivityIndicator();

                        await DisplayAlert("Saved", "This Hot Works Permit has been saved successfully.", "Acknowledge");
                    }
                }
                else
                {
                    App.HotWorksPermitDatabase.InsertHotWorksPermit(m);

                    await Navigation.PushAsync(new Permit(m.Id));

                    Navigation.RemovePage(this);
                }
            }
            catch (Exception ex)
            {
                ResetActivityIndicator();

                await DisplayAlert("Error", "An error has occurred. " + ex.Message, "Acknowledge");
            }
        }