예제 #1
0
        protected void AuditConsignment(UserTabPanel model)
        {
            var jsonToViewModel = JsonConvert.DeserializeObject <ConsignmentRootObject>(model.JsonData, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            });
            //var auditEntry = _auditService.AuditByConsignmentReference(jsonToViewModel.ConsignmentReference);
            var auditEntry = _auditService.AuditByReference(jsonToViewModel.ConsignmentReference);

            //var divisionID = Guid.Parse(jsonToViewModel.DivisionID);

            if (auditEntry == null)
            {
                var auditConsignment = GetAuditObject(model.ContentType, model.JsonData, model.JsonData, jsonToViewModel.ConsignmentReference, Guid.Parse(jsonToViewModel.ConsignmentID));
                _auditService.Insert(auditConsignment);
            }
            else
            {
                string oldAuditEntry = auditEntry.JsonDataAfter;
                if (string.IsNullOrEmpty(auditEntry.JsonDataAfter))
                {
                    oldAuditEntry = auditEntry.JsonDataBefore;
                }// if previous was first added

                // only write if something changed
                if (model.JsonData != oldAuditEntry)
                {
                    var auditConsignment = GetAuditObject(model.ContentType, oldAuditEntry, model.JsonData, jsonToViewModel.ConsignmentReference, Guid.Parse(jsonToViewModel.ConsignmentID));
                    _auditService.Insert(auditConsignment);
                }
            }
        }
예제 #2
0
        protected void AuditPurchaseInvoice(UserTabPanel model)
        {
            var jsonToViewModel = JsonConvert.DeserializeObject <PurchaseInvoiceRootObject>(model.JsonData, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            });
            //var auditEntry = _auditService.AuditByPurchaseInvoiceNumber(jsonToViewModel.PurchaseInvoiceNumber);
            var auditEntry = _auditService.AuditByReference(jsonToViewModel.PurchaseInvoiceReference);

            if (auditEntry == null) // first time audited
            {
                Guid guid;
                Guid.TryParse(jsonToViewModel.PurchaseInvoiceId, out guid);
                var auditTicket = GetAuditObject(model.ContentType, model.JsonData, model.JsonData, jsonToViewModel.PurchaseInvoiceReference, guid);
                _auditService.Insert(auditTicket);
            }
            else // update/edit
            {
                string oldAuditEntry = auditEntry.JsonDataAfter;
                if (string.IsNullOrEmpty(auditEntry.JsonDataAfter))
                {
                    oldAuditEntry = auditEntry.JsonDataBefore;
                }// if previous was first added

                // only write if something changed
                if (model.JsonData != oldAuditEntry)
                {
                    Guid guid;
                    Guid.TryParse(jsonToViewModel.PurchaseInvoiceId, out guid);
                    var auditTicket = GetAuditObject(model.ContentType, oldAuditEntry, model.JsonData, jsonToViewModel.PurchaseInvoiceReference, guid);
                    _auditService.Insert(auditTicket);
                }
            }
        }
예제 #3
0
        public void DeleteTabPanel(UserTabPanel model)
        {
            AuditSelect(model);

            model.ObjectState = Infrastructure.BaseEntities.ObjectState.Deleted;
            _tabPanelService.Delete(model);
        }
예제 #4
0
        protected void AuditTicket(UserTabPanel model)
        {
            var jsonToViewModel = JsonConvert.DeserializeObject <TicketRootObject>(model.JsonData, new JsonSerializerSettings {
                NullValueHandling = NullValueHandling.Ignore
            });
            //var auditEntry = _auditService.AuditByTicketReference(jsonToViewModel.TicketReference);
            var auditEntry = _auditService.AuditByReference(jsonToViewModel.TicketReference);

            //Note Dynamic did not allow access to the child objects, tbc possibly as a strategy in future
            //dynamic dynoModel = JsonConvert.DeserializeObject<object>(model.JsonData, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });

            if (auditEntry == null) // first time audited
            {
                var auditTicket = GetAuditObject(model.ContentType, model.JsonData, model.JsonData, jsonToViewModel.TicketReference, Guid.Parse(jsonToViewModel.TicketID));
                _auditService.Insert(auditTicket);
            }
            else // update/edit
            {
                string oldAuditEntry = auditEntry.JsonDataAfter;
                if (string.IsNullOrEmpty(auditEntry.JsonDataAfter))
                {
                    oldAuditEntry = auditEntry.JsonDataBefore;
                }// if previous was first added

                // only write if something changed
                if (model.JsonData != oldAuditEntry)
                {
                    var auditTicket = GetAuditObject(model.ContentType, oldAuditEntry, model.JsonData, jsonToViewModel.TicketReference, Guid.Parse(jsonToViewModel.TicketID));
                    _auditService.Insert(auditTicket);
                }
            }
        }
예제 #5
0
        public void CreateTabPanel(UserTabPanel model)
        {
            model.PanelID     = PrimeActs.Service.IDGenerator.NewGuid(_serverCode.ToCharArray()[0]);
            model.ObjectState = Infrastructure.BaseEntities.ObjectState.Added;

            _tabPanelService.Insert(model);
        }
예제 #6
0
        public void UpdateTabPanel(UserTabPanel model)
        {
            model.ObjectState = Infrastructure.BaseEntities.ObjectState.Modified;

            //AuditSelect(model);

            _tabPanelService.Update(model);
        }
예제 #7
0
 protected void AuditSelect(UserTabPanel model)
 {
     if (model.ContentType == "Consignment" || model.ContentType == "ConsignmentEdit")
     {
         AuditConsignment(model);
     }
     if (model.ContentType == "CreateCreditTicket" || model.ContentType == "CreateCashTicket" || model.ContentType == "CreateReceipt")
     {
         AuditTicket(model);
     }
     if (model.ContentType == "CreatePurchaseInvoice")
     {
         AuditPurchaseInvoice(model);
     }
 }
예제 #8
0
        protected void AuditExperiments(UserTabPanel model)
        {
            var getalltest = GetAllTabPanels(model.UserID).Where(a => a.ContentType == "Consignment");

            List <ConsignmentRootObject> consList = new List <ConsignmentRootObject>();

            foreach (var tp in getalltest)
            {
                // var jsonToViewModel = JsonConvert.DeserializeObject<ConsignmentRootObject>(model.JsonData, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });
                var jsonToViewModel = JsonConvert.DeserializeObject <ConsignmentRootObject>(tp.JsonData, new JsonSerializerSettings {
                    NullValueHandling = NullValueHandling.Ignore
                });
                // a few tests to determine if it should be saved ? try and look at tblConsignment
                if (jsonToViewModel.IsSaved == true && jsonToViewModel.ConsignmentItems.Count() > 0 && jsonToViewModel.ConsignmentItems[0].ProduceID != "" && jsonToViewModel.ConsignmentItems[0].ConsignmentItemArrivals[0].QuantityReceived > 0)
                {
                    consList.Add(jsonToViewModel);
                }
            }

            // if not Exist Audit Entry Then Create initial record
            if (model.ContentType == "Consignment")
            {
                // model.JsonData.Replace("")
                //int test1 = model.JsonData.IndexOf("ShowVehicleOnInvoice");
                //if (test1 > 0)
                //{
                //    model.JsonData = model.JsonData.Remove(test1 - 2, 26);
                //}

                JObject jsonO = JObject.Parse(model.JsonData); //
                // var jsonToViewModel = JsonConvert.DeserializeObject<ConsignmentViewModel>(model.JsonData);
                // DC Note, using ConsignmentEditModel did not deserialize properly, the Consignment Items were not being populated due to the constructors, easier just to let Newtonsoft create them using a more vanilla version of dependent objects
                //var jsonToViewModel2 = JsonConvert.DeserializeObject<ConsignmentEditModel>(model.JsonData, new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore });
                var jsonToViewModel3 = JsonConvert.DeserializeObject <ConsignmentRootObject>(model.JsonData, new JsonSerializerSettings {
                    NullValueHandling = NullValueHandling.Ignore
                });
            }

            // If Exists then get get Existing, to get before image

            // Perform Deltas on what has changed
        }
예제 #9
0
 public void SavePurchaseInvoiceAudit(UserTabPanel model)
 {
     AuditPurchaseInvoice(model);
 }
예제 #10
0
 public void SaveTicketAudit(UserTabPanel model)
 {
     AuditTicket(model);
 }
예제 #11
0
 public void SaveConsignmentAudit(UserTabPanel model)
 {
     AuditConsignment(model);
 }
예제 #12
0
 protected void AuditPurchaseInvoice(UserTabPanel model)
 {
     _auditOrchestra.Initialize(_principal);
     _auditOrchestra.SavePurchaseInvoiceAudit(model);
 }
예제 #13
0
 protected void AuditTicket(UserTabPanel model)
 {
     _auditOrchestra.Initialize(_principal);
     _auditOrchestra.SaveTicketAudit(model);
 }
예제 #14
0
 protected void AuditConsignment(UserTabPanel model)
 {
     _auditOrchestra.Initialize(_principal);
     _auditOrchestra.SaveConsignmentAudit(model);
 }