Beispiel #1
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                DispatchNote_DL     objDispatchNote_DL     = new DispatchNote_DL(ConnectionStringClass.GetConnection());
                DispatchNoteList_DL objDispatchNoteList_DL = new DispatchNoteList_DL(ConnectionStringClass.GetConnection());

                DispatchNote objDispatchNote = new DispatchNote();
                objDispatchNote.DispatchID    = txtDiaptchNote.Text;
                objDispatchNote.DistributorID = cmbDistributor.SelectedValue.ToString();
                objDispatchNote.EnteredBy     = CurrentUser.EmployeeID;

                int x = objDispatchNote_DL.Add(objDispatchNote);

                if (x > 0)
                {
                    foreach (DispatchNoteList _obj in objCollec)
                    {
                        objDispatchNoteList_DL.Add(_obj, StoreID);
                    }

                    MessageBox.Show("Successfully Saved");

                    Clear_Data();
                }
            }
            catch (Exception ex)
            {
            }
        }
        public  void Save(DispatchNote documentEntity)
        {
            tblDocument docToSave = SaveDocument(documentEntity);
            DispatchNote DN = documentEntity ;
            docToSave.OrderOrderTypeId = (int)DN.DispatchType;
            docToSave.InvoiceOrderId = DN.OrderId;

            foreach (DispatchNoteLineItem DNitem in DN.LineItems)
            {
                tblLineItems ll = null;
                if (docToSave.tblLineItems.Any(n => n.id == DNitem.Id))
                    ll = docToSave.tblLineItems.First(p => p.id == DNitem.Id);
                else
                {
                    ll = new tblLineItems();
                    ll.id = DNitem.Id;
                    ll.DocumentID = documentEntity.Id;
                    docToSave.tblLineItems.Add(ll);
                }
                ll.ProductID = DNitem.Product.Id;
                ll.LineItemSequenceNo = DNitem.LineItemSequenceNo;
                ll.Value = DNitem.Value;
                ll.Description = DNitem.Description;
                ll.Quantity = DNitem.Qty;
                ll.LineItemSequenceNo = DNitem.LineItemSequenceNo;
                ll.OrderLineItemType = (int)DNitem.LineItemType;
                ll.DiscountLineItemTypeId = (int)DNitem.DiscountType;
                ll.ProductDiscount = DNitem.ProductDiscount;
                ll.Vat = DNitem.LineItemVatValue;
                ll.Description = DNitem.Description;
            }
            _ctx.SaveChanges();
        }
Beispiel #3
0
        private DispatchNoteModel SaveDispatchImpl(IRepositoryLocator locator, DispatchNoteModel dispatchModel)
        {
            var entity = DispatchNote.Create(locator, dispatchModel);

            locator.FlushModifications(); // need to flush in order to get the Id into the DTO
            return(Mapper.Map <DispatchNote, DispatchNoteModel>(entity));
        }
Beispiel #4
0
        public ActionResult Edit(DispatchNoteViewModel model, string button)
        {
            try
            {
                DispatchNote dispatchNote = Mapper.Map <DispatchNote>(model);
                dispatchNote.Status = "Open";

                if (button.Equals("Print"))
                {
                    dispatchNote.IsPrinted = true;
                }

                Client clienFromDb = _clientService.GetClientById(Convert.ToInt32(model.Client));

                dispatchNote.Client = clienFromDb.CompanyName + " - " + clienFromDb.OperationType;
                dispatchNote.VehicleLicensePlateNumber = _vehicleService.GetVehicleDetailById(Convert.ToInt32(model.VehicleLicensePlateNumber)).VehicleNumber;

                _dispatchNoteService.UpdateDispatchNote(dispatchNote);
                ModelState.Clear();
                ViewData["Success"] = "Successfully Updated.";
                return(RedirectToAction("Open"));
            }
            catch (Exception e)
            {
                return(View());
            }
        }
Beispiel #5
0
        public ActionResult ViewDispatch(DispatchNoteViewModel model, string button)
        {
            try
            {
                DispatchNote dispatchNote = Mapper.Map <DispatchNote>(model);

                if (button.Equals("Close"))
                {
                    dispatchNote.Status = "Closed";
                }
                else
                {
                    dispatchNote.IsDispatchNoteReceived = false;
                    dispatchNote.IsGoodsDelivered       = false;
                    dispatchNote.Remarks = null;
                    dispatchNote.Status  = "Cancelled";
                }

                _dispatchNoteService.UpdateDispatchNoteStatus(dispatchNote);
                ModelState.Clear();
                ViewData["Success"] = "Successfully Updated.";
                return(RedirectToAction("Open"));
            }
            catch (Exception ex)
            {
                return(View());
            }
        }
        OrderReportContainer MapDispatchNote(DispatchNote dispatchNote)
        {
            using (StructureMap.IContainer c = NestedContainer)
            {
                OrderReportContainer docData = new OrderReportContainer();
                MainOrder mainOrder = Using<IMainOrderRepository>(c).GetById(dispatchNote.OrderId);
                OrderHeader docHeader = new OrderHeader()
                                               {
                                                   DatePrinted = DateTime.Now,
                                                   DateRequired = dispatchNote.StartDate,
                                                   DocumentIssuerUserName = dispatchNote.DocumentIssuerUser.Username,
                                                   DocumentIssuerCCName = dispatchNote.DocumentIssuerCostCentre.Name,
                                                   DocumentReference = dispatchNote.DocumentReference,
                                                   RouteName = ((Outlet) mainOrder.IssuedOnBehalfOf).Route.Name,
                                                   SalesmanName = dispatchNote.DocumentRecipientCostCentre.Name,
                                                   StatusStr = dispatchNote.Status.ToString(),
                                                   TotalNet = dispatchNote.TotalNet,
                                                  
                                               };
                docHeader.DocumentIssuerDetails = "Generated by: " + docHeader.DocumentIssuerUserName +
                                                  " ; Cost centre: " +
                                                  docHeader.DocumentIssuerCCName + "; Date: " +
                                                  docHeader.DatePrinted.ToShortDateString();
                docData.DocumentHeader = docHeader;
                int i = 0;

                foreach (var item in dispatchNote.LineItems)
                {
                    var li = new OrderReportLineItem()
                                                 {
                                                     DiscountType =
                                                         (item.DiscountType == DiscountType.None
                                                              ? StringUtils.BreakUpperCB(
                                                                  item.Product.GetType().ToString().Split('.').Last())
                                                              : StringUtils.BreakUpperCB(item.DiscountType.ToString())),

                                                     LineItemTypeStr = item.LineItemType.ToString(),
                                                     ProductName = item.Product.Description,
                                                     ProductCode = item.Product.ProductCode,
                                                     Qty = item.Qty,
                                                     RowNumber = i + 1,
                                                     TotalVat = item.LineItemVatTotal,
                                                     UnitDiscount = item.ProductDiscount,
                                                     UnitPrice = item.Value,
                                                     UnitVat = item.LineItemVatValue,
                                                     TotalNet = item.LineItemTotal,
                                                     GrossAmount = item.LineItemTotal + item.LineItemVatTotal,
                                                 };
                    docData.LineItems.Add(li);
                    i++;
                }
                return docData;
            }
        }
Beispiel #7
0
        public int Add(DispatchNote obj)
        {
            try
            {
                SqlParameter[] paramList = new SqlParameter[] {
                    new SqlParameter("@DispatchID", obj.DispatchID),
                    new SqlParameter("@DistributorID", obj.DistributorID),
                    new SqlParameter("@TerritoryID", obj.TerritoryID),
                    new SqlParameter("@EnteredBy", obj.EnteredBy)
                };

                return(Execute.RunSP_RowsEffected(Connection, "SPADD_DispatchNote", paramList));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message, ex);
            }
        }
        public void SubmitChanges(DispatchNote document, BasicConfig config)
        {
            //document.Confirm();
            int sequence = 0;
            var envelope = new CommandEnvelope();
            envelope.Initialize(document);
            
            List<DocumentCommand> commandsToExecute = document.GetDocumentCommandsToExecute();
            
            CreateCommand createCommand;
            if (TryGetCreateCommand(commandsToExecute, out createCommand))
            {
                envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, createCommand));
               // _commandRouter.RouteDocumentCommand(createCommand);
                _auditLogWFManager.AuditLogEntry("Dispatch Note", 
                    string.Format("Dispatch Note Document No: {0}; to: {1}; Created", document.Id, document.DocumentRecipientCostCentre.Name));
            }

            List<AfterCreateCommand> lineItemCommands;
            if (TryGetAfterCreateCommands(commandsToExecute, out lineItemCommands))
            {
                foreach (var item in lineItemCommands)
                {
                    envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, item));
                    //_commandRouter.RouteDocumentCommand(item);
                    var _item = item as AddDispatchNoteLineItemCommand;
                    _auditLogWFManager.AuditLogEntry("Dispatch Note", 
                        string.Format("Added Product: {1}; Quantity: {2}; Value: {3}; to Dispatch Note document: {0}", document.Id, item.Description, _item.Qty, _item.Value));
                }
            }
            ConfirmCommand confirmCommand;
            if (TryGetConfirmCommand(commandsToExecute, out confirmCommand))
            {
                envelope.CommandsList.Add(new CommandEnvelopeItem(++sequence, confirmCommand));

                //_commandRouter.RouteDocumentCommand(confirmCommand);
                _auditLogWFManager.AuditLogEntry("Dispatch Note", string.Format("Confirmed Dispatch Note document: {0}", document.Id));
               // _notifyService.SubmitDispatch(document);
            }
            _commandEnvelopeRouter.RouteCommandEnvelope(envelope);
            document.CallClearCommands();
            
        }
Beispiel #9
0
        public Document CreateDocument(Guid id, DocumentType documentType, CostCentre documentIssuerCC, CostCentre documentRecipientCC, User documentIssuerUser, string DocumentReference, double? longitude=null, double? latitude=null)
        {
            Document doc = null;
            switch (documentType)
            {
                case DocumentType.Order:
                    doc = new Order(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, /*null, */documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                case DocumentType.DispatchNote://
                    doc = new DispatchNote(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, /*null, */documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                
                case DocumentType.Receipt:
                    doc = new Receipt(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                case DocumentType.DisbursementNote:
                    doc = new DisbursementNote(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                case DocumentType.CreditNote:
                    doc = new CreditNote(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                case DocumentType.ReturnsNote:
                  
                    doc = new ReturnsNote(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, documentIssuerUser, DocumentReference, longitude, latitude);
                    break;
                case DocumentType.PaymentNote:
                    doc = new PaymentNote(id);
                    doc = Map(doc, documentType, documentIssuerCC, documentRecipientCC, documentIssuerUser, DocumentReference, longitude, latitude);
                    break;


            }

            return doc;
        }
 public static TrackingNotification Create(IRepositoryLocator locator, TrackingNotificationDto dto, DispatchNote dispatchNote)
 {
     var instance = Mapper.Map<TrackingNotification>(dto);
       instance.DispatchNote = dispatchNote;
       return locator.Save(instance);
 }
        DocumentReportContainer MapDispatchNote(DispatchNote dispatchNote)
        {
            DocumentReportContainer docData = new DocumentReportContainer();
            MainOrder mainOrder = _mainOrderRepository.GetById(dispatchNote.OrderId);
            DocumentHeader docHeader = new DocumentHeader()
            {
                DatePrinted = DateTime.Now,
                DateRequired = dispatchNote.StartDate,
                DocumentIssuerUserName = dispatchNote.DocumentIssuerUser.Username,
                DocumentIssuerCCName = dispatchNote.DocumentIssuerCostCentre.Name,
                DocumentReference = dispatchNote.DocumentReference,
                RouteName = ((Outlet)mainOrder.IssuedOnBehalfOf).Route.Name,
                SalesmanName = dispatchNote.DocumentRecipientCostCentre.Name,
                StatusStr = dispatchNote.Status.ToString(),
                TotalNet = dispatchNote.TotalNet,
            };
            docHeader.DocumentIssuerDetails = "Generated by: " + docHeader.DocumentIssuerUserName + " ; Cost centre: " +
                                             docHeader.DocumentIssuerCCName + "; Date: " +
                                             docHeader.DatePrinted.ToShortDateString();
            docData.DocumentHeader = docHeader;
            int i = 0;
            //foreach (var item in dispatchNote.LineItems)
            //{

            //    DocumentLineItem li = new DocumentLineItem
            //                              {
            //                                  DiscountType =
            //                                      (item.DiscountType == DiscountType.None
            //                                           ? StringUtils.BreakUpperCB(
            //                                               item.Product.GetType().ToString().Split('.').Last())
            //                                           : StringUtils.BreakUpperCB(item.DiscountType.ToString())),
            //                                  LineItemTypeStr = item.LineItemType.ToString(),
            //                                  ProductName = item.Product.Description,
            //                                  Qty = item.Qty,
            //                                  RowNumber = i + 1,
            //                                  TotalNet = item.LineItemTotal,
            //                                  TotalVat = item.LineItemVatTotal,
            //                                  UnitDiscount = item.ProductDiscount,
            //                                  UnitPrice = item.Value,
            //                                  UnitVat = item.LineItemVatValue,
            //                                  GrossAmount = item.LineItemTotal + item.LineItemVatTotal,
            //                              };
            //    docData.LineItems.Add(li);
            //    i++;
            //}

            foreach (var item in mainOrder.DispatchedLineItems)
            {
                OrderReportLineItem li = new DocumentLineItem()
                {
                    ApprovedQuantity = item.ApprovedQuantity,
                    BackOrderQuantity = item.BackOrderQuantity,

                    DiscountType =
                        (item.DiscountType == DiscountType.None
                             ? StringUtils.BreakUpperCB(
                                 item.Product.GetType().ToString().Split('.').Last())
                             : StringUtils.BreakUpperCB(item.DiscountType.ToString())),

                    DispachedQuantity = item.DispatchedQuantity,
                    GrossAmount = item.LineItemTotal,
                    LineItemTypeStr = item.LineItemType.ToString(),
                    LostSaleQuantity = item.LostSaleQuantity,
                    ProductName = item.Product.Description,
                    Qty = item.Qty,
                    RowNumber = i + 1,
                    TotalNet = item.TotalNetPrice,
                    TotalVat = item.LineItemVatTotal,
                    UnitDiscount = item.ProductDiscount,
                    UnitPrice = item.Value,
                    UnitVat = item.LineItemVatValue,
                };
                docData.LineItems.Add(li);
                i++;
            }
            return docData;
        }
 private DispatchNote Map(tblDocument tblDoc)
 {
     var dn = new DispatchNote(tblDoc.Id);
     _Map(tblDoc, dn);
     if (tblDoc.OrderOrderTypeId != null)
         dn.DispatchType = (DispatchNoteType)tblDoc.OrderOrderTypeId;
     if (tblDoc.InvoiceOrderId != null)
         dn.OrderId = tblDoc.InvoiceOrderId.Value;
     dn._SetLineItems(tblDoc.tblLineItems.Select(n => MapDNLineItem(n)).ToList());
     return dn;
 }
 public void SubmitToWF(DispatchNote dn)
  {
      _confirmDispatchNoteWfManager.SubmitChanges(dn,null);
    
  }