Example #1
0
        public List <Document> GetDocsFromDates(Login login, ref DocParameters docParameters)
        {
            IWS.ServiceSoapClient IWSService = InitWS(login);

            IWS.DateTimeRangeSelection dtRange = new IWS.DateTimeRangeSelection();

            List <Document> documents = new List <Document>();

            dtRange.StartDate = docParameters.FromDate;
            dtRange.EndDate   = docParameters.ToDate;

            IWS.ScannedDocumentsSelection_V2 docsSel = new IWS.ScannedDocumentsSelection_V2()
            {
                SelectionDateRange = dtRange
            };

            IWS.ScannedDocumentSelection docSel = new IWS.ScannedDocumentSelection();

            IWS.GetScannedDocuments_V2 getScannedDocumentsResult = IWSService.Get_Scanned_Documents_V2(iwsLogin(login), docsSel);

            if (getScannedDocumentsResult.Documents != null)
            {
                foreach (IWS.Document_V3 doc in getScannedDocumentsResult.Documents)
                {
                    docSel.ScanID       = Convert.ToInt32(doc.ScanID.Value);
                    docSel.ConvertToPdf = true;
                    Int64 ModificationCounter = doc.ModificationID;
                    IWS.GetScannedDocument getScannedDocumentResult = IWSService.Get_Scanned_Document(iwsLogin(login), docSel);
                    int i = 0;
                    foreach (IWS.DocumentResult document in getScannedDocumentResult.Documents)
                    {
                        i++;
                        string placeid = "";
                        string doctype = "";
                        if (doc.Place != null)
                        {
                            placeid = doc.Place.PlaceID.ToString();
                        }
                        if (doc.TypeDoc != null)
                        {
                            doctype = doc.TypeDoc.ToString();
                        }


                        Document thisdoc = new Document();

                        thisdoc.ScanID     = doc.ScanID.ToString();
                        thisdoc.SequenceID = i.ToString();
                        thisdoc.VehicleID  = doc.Vehicle.ID.ToString();
                        if (doc.Driver != null)
                        {
                            thisdoc.DriverID = doc.Driver.ID.ToString();
                        }
                        thisdoc.PlaceID      = placeid;
                        thisdoc.Comment      = doc.Comment;
                        thisdoc.DocumentType = doctype;
                        thisdoc.ID           = doc.SerialNumber;
                        thisdoc.DocumentID   = ModificationCounter;
                        DateTime dt = new DateTime(0, DateTimeKind.Utc);
                        dt = Convert.ToDateTime(doc.CreationDate);
                        dt.ToLocalTime();
                        thisdoc.CreatedDateTime = dt.ToString();
                        MemoryStream stream = new MemoryStream(Convert.FromBase64String(document.Document1));
                        thisdoc.Doc = stream;
                        documents.Add(thisdoc);
                    }
                }
            }

            string strError = handleError(getScannedDocumentsResult);

            if (strError != null)
            {
                docParameters.ErrorMessage = strError;
            }
            return(documents);
        }
Example #2
0
        public string GetPlanning(Login login, ref Planning planning, string FromDate, ref string ToDate, bool Init)
        {
            IWS.ServiceSoapClient IWSService = InitWS(login);

            IWS.PlanningModificationsSelection_V2 PlanningSelection = new IWS.PlanningModificationsSelection_V2();

            IWS.DateTimeSelection      Selection = new IWS.DateTimeSelection();
            IWS.DateTimeRangeSelection dateRange = new IWS.DateTimeRangeSelection();
            if (Init)
            {
                Selection.DateTimeType = IWS.enumSelectionDateTimeType.GET_MODIFIED_SINCE_LAST_REQUEST;
                PlanningSelection.SelectionFromToday = Selection;
            }
            else
            {
                dateRange.StartDate             = Convert.ToDateTime(FromDate);
                PlanningSelection.DateTimeRange = dateRange;
            }

            PlanningSelection.PlanningSelectionType = IWS.enumPlanningSelectionModificationsType.ALL;
            IWS.GetPlanningModificationsResult_V5 getPlanningResult = IWSService.Get_Planning_Modifications_V5(iwsLogin(login), PlanningSelection);

            string strError = handleError(getPlanningResult);

            if (getPlanningResult.MaximumModificationDate == null)
            {
                ToDate = FromDate;
            }
            else
            {
                ToDate = getPlanningResult.MaximumModificationDate.Value.ToString();
            }

            if (getPlanningResult.Trips != null)
            {
                foreach (IWS.TripItemResult_V5 trip in getPlanningResult.Trips)
                {
                    planning.Trips.Add(new Trip {
                        TripId         = trip.TripId,
                        Status         = trip.Status.ToString(),
                        Vehicle        = trip.Vehicle.ID ?? "",
                        Driver         = trip.Driver?.ID ?? "",
                        StartDate      = trip.StartDate,
                        EndDate        = trip.EndDate,
                        TransferStatus = trip.TransferStatus.ToString(),
                        CancelStatus   = trip.CancelStatus.ToString(),
                        ExecutionDate  = (DateTime)trip.ExecutionDate
                    });
                }
            }
            if (getPlanningResult.Places != null)
            {
                foreach (IWS.PlaceItemResult_V4 place in getPlanningResult.Places)
                {
                    planning.Places.Add(new Place {
                        PlaceId           = place.PlaceId,
                        Status            = place.Status.ToString(),
                        ExecutionDate     = (DateTime)place.ExecutionDate,
                        DriverDisplay     = place.DriverDisplay,
                        VehicleCode       = place.Vehicle.Code ?? "",
                        DriverID          = place.Driver?.ID ?? "",
                        Author            = place.Author,
                        ActivityID        = (int)place.Activity.ID,
                        DispatcherDisplay = place.DispatcherDisplay,
                        Reference         = place.References.InternalReference ?? "",
                        StartDate         = place.StartDate,
                        EndDate           = place.EndDate
                    });
                }
            }
            if (getPlanningResult.Consultation != null)
            {
                foreach (IWS.Consultation_V3 consultation in getPlanningResult.Consultation)
                {
                    Consultation thisCons = new Consultation();
                    if (consultation.Place != null)
                    {
                        thisCons.PlaceId = consultation.Place.PlaceID;
                    }
                    if (consultation.Position != null)
                    {
                        thisCons.Latitude  = consultation.Position.Latitude;
                        thisCons.Longitude = consultation.Position.Longitude;
                    }
                    thisCons.Km = consultation.Km;
                    if (consultation.Trip != null)
                    {
                        thisCons.TripId = consultation.Trip.TripID;
                    }
                    thisCons.VehicleId   = consultation.Vehicle.ID;
                    thisCons.ActivityId  = consultation.Activity.ID;
                    thisCons.ArrivalDate = consultation.ArrivalDate;
                    thisCons.LeavingDate = consultation.LeavingDate;
                    planning.Consultations.Add(thisCons);
                }
            }
            if (getPlanningResult.Anomalies != null)
            {
                foreach (IWS.Anomaly_V3 anomaly in getPlanningResult.Anomalies)
                {
                    if (anomaly.Place == null)
                    {
                        planning.Anomalies.Add(new Anomaly {
                            CustomerID = anomaly.Product?.CustomerID ?? "",
                            //                        DriverId = anomaly.Driver.ID ?? "",
                            AnomalyCode        = anomaly.AnomalyCode,
                            AnomalyDateTime    = anomaly.AnomalyDateTime,
                            AnomalyDescription = anomaly.AnomalyDescription,
                            AnomalyID          = anomaly.AnomalyID
                        });
                    }
                    else
                    {
                        planning.Anomalies.Add(new Anomaly {
                            PlaceId    = anomaly.Place.CustomerID ?? "",
                            CustomerID = anomaly.Product?.CustomerID ?? "",
                            //                        DriverId = anomaly.Driver.ID ?? "",
                            AnomalyCode        = anomaly.AnomalyCode,
                            AnomalyDateTime    = anomaly.AnomalyDateTime,
                            AnomalyDescription = anomaly.AnomalyDescription,
                            AnomalyID          = anomaly.AnomalyID
                        });
                    }
                }
            }
            //if (getPlanningResult.Products != null)
            //    foreach (IWS.ProductItemResult_V3 product in getPlanningResult.Products) {
            //        Product thisProd = new Product();
            //        thisProd.ProductID = product.ProductID;
            //        thisProd.Status = product.Status.ToString();
            //        thisProd.DriverDisplay = product.DriverDisplay;
            //        //planning.Products.Add(thisProd);
            //    }
            if (getPlanningResult.Jobs != null)
            {
                foreach (IWS.JobItemResult_V3 job in getPlanningResult.Jobs)
                {
                    planning.Jobs.Add(new Job {
                        JobId         = job.JobId,
                        Comment       = job.Comment,
                        DriverDisplay = job.DriverDisplay,
                        Status        = job.Status.ToString()
                    });
                }
            }
            return(strError);
        }