public ServiceReponse Requests(ServiceReport request)
 {
     return new ServiceReponse
     {
         service_notice = "your request has been received"
     };
 }
Пример #2
0
        public IActionResult AddNewReport()
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }


            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;
            ServiceReport   model   = new ServiceReport();

            ViewData["Companies"] = context.GetClientByContract();

            List <SelectListItem> PurposeList = new List <SelectListItem>();

            PurposeList.Add(new SelectListItem {
                Value = "Project", Text = "Project"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Installation", Text = "Installation"
            });
            PurposeList.Add(new SelectListItem {
                Value = "M.S.A", Text = "M.S.A"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Chargable", Text = "Chargable"
            });
            PurposeList.Add(new SelectListItem {
                Value = "P.O.C", Text = "P.O.C"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Delivery", Text = "Delivery"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Return", Text = "Return"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Others", Text = "Others"
            });
            ViewData["Purpose"] = PurposeList;

            List <SelectListItem> JobStatusList = new List <SelectListItem>();

            JobStatusList.Add(new SelectListItem {
                Value = "Completed", Text = "Completed"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Followup Required", Text = "Followup Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Recommendation Requied", Text = "Recommendation Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Escalated to Ext. Support", Text = "Escalated to Ext. Support"
            });
            ViewData["JobStatusList"] = JobStatusList;

            model.SerialNumber = context.getReportCounts();
            return(View(model));
        }
Пример #3
0
        protected void Enviar(object sender, EventArgs e)
        {
            ServiceReport report = new ServiceReport();

            report.AdicionaNovo(servicoID, oficinaID, Descritivo.Text);
            Response.Redirect("~/Oficina/Relatorios");
        }
Пример #4
0
        public IActionResult AddBilling(ServiceReport model)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            if (ModelState.IsValid)
            {
                if (model.Labour < 0 || model.Others < 0 || model.Parts < 0 || model.Transport < 0)
                {
                    ModelState.AddModelError("", "Costs cannot be negative");
                    return(View(model));
                }
                if (model.InvoiceNo < 0)
                {
                    ModelState.AddModelError("", "Invoice number cannot be negative");
                    return(View(model));
                }


                CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;
                context.AddBilling(model);

                return(RedirectToAction("Report", model.SerialNumber));
            }
            ModelState.AddModelError("", "Error have occured");
            return(View(model));
        }
        private void fillData()
        {
            ServiceReport reports = new ServiceReport();

            pedidosGridView.DataSource = reports.ListarPorOficina(shop.getID());
            pedidosGridView.DataBind();
        }
Пример #6
0
        public IActionResult Report(int id)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            if (id == 0)
            {
                return(RedirectToAction("ViewReports"));
            }

            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;

            if (HttpContext.Session.GetString("AdminValidity") == "Admin" || HttpContext.Session.GetString("AdminValidity") == "Super Admin" || context.getServiceReport(id).ReportFrom == context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID"))).FirstName + context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID"))).LastName)
            {
                ViewData["allowdelete"] = "weee";
            }
            if ((HttpContext.Session.GetString("AdminValidity") == "Admin" || HttpContext.Session.GetString("AdminValidity") == "Super Admin"))
            {
                ViewData["rights"] = "Admin";
            }


            ServiceReport model = context.getServiceReport(id);

            if (model.SerialNumber == 0)
            {
                return(RedirectToAction("ViewReports"));
            }
            return(View(model));
        }
Пример #7
0
        private static MimeMessage ComposeMessage(ServiceReport serviceReport, MailboxAddress sender,
                                                  IEnumerable <MailboxAddress> ccRecipients)
        {
            var bodyBuilder = new BodyBuilder
            {
                TextBody = string.Format(UiStrings.ServiceReportMailBody, serviceReport.Device.Name,
                                         serviceReport.ValidTill.ToShortDateString())
            };

            if (File.Exists(serviceReport.Path))
            {
                bodyBuilder.Attachments.Add(serviceReport.Path);
            }

            var message = new MimeMessage
            {
                Sender  = sender,
                Subject = string.Format(UiStrings.ServiceReportMailSubject, serviceReport.Device.Name,
                                        serviceReport.ValidTill.ToShortDateString()),

                Body = bodyBuilder.ToMessageBody(),
            };

            if (serviceReport.Device?.Chief != null && !string.IsNullOrEmpty(serviceReport.Device.Chief.Email) &&
                Helper.IsValidEmail(serviceReport.Device.Chief.Email))
            {
                message.To.Add(
                    new MailboxAddress(serviceReport.Device.Chief.FullName, serviceReport.Device.Chief.Email));
            }

            message.Cc.AddRange(ccRecipients);

            return(message);
        }
Пример #8
0
        public IActionResult AddBilling(int id)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;

            ServiceReport model = context.getServiceReport(id);

            return(View(model));
        }
        public void SetDevice(Device device)
        {
            this.device = device;

            if (device != null)
            {
                tblProvider.Text     = device.provider;
                tblModel.Text        = device.model;
                tblSerialNumber.Text = device.serial_number;

                cAddress1.SetAddress(device.address);
            }

            MachineRecordData rec = device.GetLastRecord();

            if (rec != null)
            {
                tblBlackAndWhite.Text = rec.print_counter_black_and_white.ToString();
                tblColor.Text         = rec.print_counter_color.ToString();
                tblScans.Text         = rec.scan_counter.ToString();
            }

            ServiceReport report = DAO.GetLastReport(device.id);

            if (report != null)
            {
                tblAsystentCounter.Text = report.Counter.ToString();
                tblLastService.Text     = report.DateOfServiceClosed.ToShortDateString();
                tblTechnican.Text       = report.Technican;
            }

            Client client = device.GetClient();

            if (client != null)
            {
                tblClientName.Text = client.name;
                tblNipName.Text    = client.NIP;
                tblAddress.Text    = client.address;
            }

            this.client = client;
        }
Пример #10
0
        public IActionResult PrintReport(int id)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;
            ServiceReport   model   = context.getServiceReport(id);

            if (model.SerialNumber == 0)
            {
                return(RedirectToAction("ViewReports"));
            }
            string[] m = model.JobStatus;

            string jobcombined = "";

            if (model.JobStatus.Length > 1)
            {
                for (int i = 0; i < model.JobStatus.Length; i++)
                {
                    if (model.JobStatus[i] != model.JobStatus.Last())
                    {
                        jobcombined += model.JobStatus[i] + ",";
                    }
                    else
                    {
                        jobcombined += model.JobStatus[i];
                    }
                }
            }
            else if (model.JobStatus.Length == 1)
            {
                jobcombined = model.JobStatus[0];
            }
            model.JobStat = jobcombined;
            HttpContext.JsReportFeature()
            .Recipe(Recipe.PhantomPdf);

            return(View(model));
        }
Пример #11
0
        public IActionResult ReportConfirm(int id)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;
            User            user    = context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID")));

            if (!(HttpContext.Session.GetString("AdminValidity") == "Admin" || HttpContext.Session.GetString("AdminValidity") == "Super Admin"))
            {
                return(RedirectToAction("Error", "Admin"));
            }
            ServiceReport meh            = context.getServiceReport(id);
            double        totalmshremain = context.GetRemainingMSHByCompany(meh);

            if (totalmshremain < meh.MSHUsed)
            {
                TempData["error"] = "The company you are trying to confirm currently does not have enough remaining MSH.";

                return(RedirectToAction("Report", new { id }));
            }

            context.LogAction("Service Report", "Service Report (SRN: " + id + ") has been confirmed.", context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID"))));
            context.ReportConfirm(id);


            ServiceReport remains = context.SubtractMSHUsingSR(context.getServiceReport(id));

            while (remains.MSHUsed != 0)
            {
                remains = context.SubtractMSHUsingSR(remains);
            }

            Debug.WriteLine("hi id = " + id);
            return(RedirectToAction("ViewReports"));
        }
Пример #12
0
        /// <summary>
        /// Get detailed information about a service including information about which databases and other datasources it references, its
        /// source map document path, and other similar information.
        /// </summary>
        /// <param name="service">The name of the service to get information on</param>
        /// <param name="folderName">The name of the containing folder (null or "/" if in the root folder)</param>
        /// <returns>A ServiceManifest object containing detailed information about the service's datasources, names, paths, etc.</returns>
        public async Task <ServiceManifest> GetServiceManifest(ServiceReport service, string folderName = null)
        {
            if (folderName == "/")
            {
                folderName = null;
            }

            Uri serviceManifestEndpoint;

            if (string.IsNullOrEmpty(folderName))
            {
                serviceManifestEndpoint = new Uri(ServerUrl, string.Format("services/{0}.{1}/iteminfo/manifest/manifest.json", service.serviceName, service.type));
            }
            else
            {
                serviceManifestEndpoint = new Uri(ServerUrl, string.Format("services/{0}/{1}.{2}/iteminfo/manifest/manifest.json", folderName, service.serviceName, service.type));
            }

            var parms = new Dictionary <string, string>();

            ServiceManifest response = await GetStringAsync <ServiceManifest>(serviceManifestEndpoint, parms);

            return(response);
        }
Пример #13
0
 public ServiceStatusWrapper(ServiceReport serviceReport)
 {
     this.serviceReport = serviceReport;
 }
Пример #14
0
        public IActionResult EditReport(ServiceReport report)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }

            List <SelectListItem> PurposeList = new List <SelectListItem>();

            PurposeList.Add(new SelectListItem {
                Value = "Project", Text = "Project"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Installation", Text = "Installation"
            });
            PurposeList.Add(new SelectListItem {
                Value = "M.S.A", Text = "M.S.A"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Chargable", Text = "Chargable"
            });
            PurposeList.Add(new SelectListItem {
                Value = "P.O.C", Text = "P.O.C"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Delivery", Text = "Delivery"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Return", Text = "Return"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Others", Text = "Others"
            });
            ViewData["Purpose"] = PurposeList;

            List <SelectListItem> JobStatusList = new List <SelectListItem>();

            JobStatusList.Add(new SelectListItem {
                Value = "Completed", Text = "Completed"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Followup Required", Text = "Followup Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Recommendation Requied", Text = "Recommendation Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Escalated to Ext. Support", Text = "Escalated to Ext. Support"
            });
            ViewData["JobStatusList"] = JobStatusList;
            //update database
            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;
            User            user    = context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID")));

            if (!(HttpContext.Session.GetString("AdminValidity") == "Admin" || HttpContext.Session.GetString("AdminValidity") == "Super Admin" || (user.FirstName + user.LastName) == context.getServiceReport(report.SerialNumber).ReportFrom))
            {
                return(RedirectToAction("Login", "Users"));
            }
            if (!ModelState.IsValid)
            {
                return(View(report));
            }

            if (ModelState.IsValid)
            {
                double totalmshremain = context.GetRemainingMSHByCompany(report);
                Debug.WriteLine("Debug from post editreport: Total MSH Remaining : " + totalmshremain);
                double calculatedhours = context.CalculateMSH(report.TimeStart, report.TimeEnd);
                //ModelState.AddModelError("", "The calculated MSH:" + calculatedhours);
                //return View(model);
                if (totalmshremain < calculatedhours)
                {
                    ModelState.AddModelError("", "The company you have selected does not have enough remaining MSH, Please contact your Boss immediately regarding this issue.");
                    return(View(report));
                }


                if (report.TimeStart > DateTime.Now || report.TimeEnd > DateTime.Now)
                {
                    ModelState.AddModelError("", "Please enter a report after the service is rendered");
                    return(View(report));
                }

                if (!(report.TimeStart.CompareTo(report.TimeEnd) <= 0))
                {
                    ModelState.AddModelError("", "your start time should be before your end time");
                    return(View(report));
                }

                context.ReportEdit(report);
                context.LogAction("Service Report", "Service Report (SRN: " + report.SerialNumber + ") has been edited.", context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID"))));
                return(RedirectToAction("Report", new { id = report.SerialNumber }));
            }

            return(View(report));
        }
Пример #15
0
 public ReportController()
 {
     _reportService = new ServiceReport();
 }
Пример #16
0
        public IActionResult EditReport(int id)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }
            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;

            User user = context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID")));

            ServiceReport model = new ServiceReport();

            //ViewData["Companies"] = context.GetClientByContract();

            #region prepare for failure codes
            List <SelectListItem> PurposeList = new List <SelectListItem>();
            PurposeList.Add(new SelectListItem {
                Value = "Project", Text = "Project"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Installation", Text = "Installation"
            });
            PurposeList.Add(new SelectListItem {
                Value = "M.S.A", Text = "M.S.A"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Chargable", Text = "Chargable"
            });
            PurposeList.Add(new SelectListItem {
                Value = "P.O.C", Text = "P.O.C"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Delivery", Text = "Delivery"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Return", Text = "Return"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Others", Text = "Others"
            });
            ViewData["Purpose"] = PurposeList;

            List <SelectListItem> JobStatusList = new List <SelectListItem>();
            JobStatusList.Add(new SelectListItem {
                Value = "Completed", Text = "Completed"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Followup Required", Text = "Followup Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Recommendation Requied", Text = "Recommendation Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Escalated to Ext. Support", Text = "Escalated to Ext. Support"
            });
            ViewData["JobStatusList"] = JobStatusList;

            //model.SerialNumber = context.getReportCounts() + 1;
            #endregion
            //pull db
            model = context.getServiceReport(id);
            if (model.SerialNumber == 0)
            {
                return(RedirectToAction("Report"));
            }
            if (!(HttpContext.Session.GetString("AdminValidity") == "Admin" || HttpContext.Session.GetString("AdminValidity") == "Super Admin" || (user.FirstName + user.LastName) == context.getServiceReport(id).ReportFrom))
            {
                return(RedirectToAction("Error", "Admin"));
            }

            return(View(model));
        }
Пример #17
0
        public IActionResult AddNewReport(ServiceReport model)
        {
            if (HttpContext.Session.GetString("LoginID") == null)
            {
                return(RedirectToAction("Login", "Users"));
            }


            CentricsContext context = HttpContext.RequestServices.GetService(typeof(Centrics.Models.CentricsContext)) as CentricsContext;

            ViewData["Companies"] = context.GetClientByContract();

            #region prepare for failure codes
            List <SelectListItem> PurposeList = new List <SelectListItem>();
            PurposeList.Add(new SelectListItem {
                Value = "Project", Text = "Project"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Installation", Text = "Installation"
            });
            PurposeList.Add(new SelectListItem {
                Value = "M.S.A", Text = "M.S.A"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Chargable", Text = "Chargable"
            });
            PurposeList.Add(new SelectListItem {
                Value = "P.O.C", Text = "P.O.C"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Delivery", Text = "Delivery"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Return", Text = "Return"
            });
            PurposeList.Add(new SelectListItem {
                Value = "Others", Text = "Others"
            });
            ViewData["Purpose"] = PurposeList;

            List <SelectListItem> JobStatusList = new List <SelectListItem>();
            JobStatusList.Add(new SelectListItem {
                Value = "Completed", Text = "Completed"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Followup Required", Text = "Followup Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Recommendation Requied", Text = "Recommendation Required"
            });
            JobStatusList.Add(new SelectListItem {
                Value = "Escalated to Ext. Support", Text = "Escalated to Ext. Support"
            });
            ViewData["JobStatusList"] = JobStatusList;

            model.SerialNumber = context.getReportCounts() + 1;
            string name = "";
            if (((TempData.Peek("dataishere") != null).ToString().ToLower()) == "true")
            {
                name = TempData.Peek("dataishere").ToString();
            }

            if (name != "")
            {
                ClientAddress         cA          = context.GetClientAddressList(name);
                List <string>         aList       = cA.Addresslist;
                List <SelectListItem> AddressList = new List <SelectListItem>();
                if (aList != null)
                {
                    for (int i = 0; i < aList.Count(); i++)
                    {
                        AddressList.Add(new SelectListItem {
                            Value = aList[i], Text = aList[i]
                        });
                    }
                }
                ViewData["AddressList"] = AddressList;
            }
            else
            {
                ModelState.AddModelError("", "A error occured. Important");
                return(View(model));
            }
            #endregion
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (ModelState.IsValid)
            {
                double totalmshremain  = context.GetRemainingMSHByCompany(model);
                double calculatedhours = context.CalculateMSH(model.TimeStart, model.TimeEnd);
                //for test purpose
                //ModelState.AddModelError("", "The calculated MSH:" + calculatedhours);
                //return View(model);
                if (totalmshremain < calculatedhours)
                {
                    ModelState.AddModelError("", "The company you have selected does not have enough remaining MSH, Please contact your Boss immediately regarding this issue.");
                    return(View(model));
                }
                if (context.CheckExisitingReportID(model.SerialNumber))
                {
                    ModelState.AddModelError("", "Contact Application Developer");
                    return(View(model));
                }

                if (model.TimeStart > DateTime.Now || model.TimeEnd > DateTime.Now)
                {
                    ModelState.AddModelError("", "Please enter a report after the service is rendered");
                    return(View(model));
                }

                if (!(model.TimeStart.CompareTo(model.TimeEnd) <= 0))
                {
                    ModelState.AddModelError("", "your start time should be before your end time");
                    return(View(model));
                }
                User user = context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID")));
                model.ReportFrom = user.FirstName + user.LastName;
                context.AddServiceReport(model);
                context.LogAction("Service Report", "Service Report (SRN: " + model.SerialNumber + ") created for " + model.ClientCompanyName + " at " + model.ClientAddress + ".", context.GetUser(Convert.ToInt32(HttpContext.Session.GetString("LoginID"))));
                TempData.Remove("dataishere");
                return(RedirectToAction("ViewReports", "ServiceReport"));
            }

            return(View(model));
        }
Пример #18
0
 public VMServiceReport(ServiceReport serviceReport)
 {
     Date = serviceReport.Date;
 }