Esempio n. 1
0
        public DocumentPaymentData(int DocumentID, WareDocument Document, CashRegister _CashRegister)
        {
            InitializeComponent();
            cashRegister       = _CashRegister;
            document           = Document;
            manager            = new ContextManager();
            documentSuma       = Document.DocumentSum;
            documentId         = DocumentID;
            PayDateDTP.Value   = DateTime.Now;
            DocumentSumaL.Text = Convert.ToString(documentSuma);
            CheckNumberTB.Text = document.Number;
            Fill();
            FillPaymentTypes();
            FillStructureObjects();

            ConfigurationParametersLogic config = new ConfigurationParametersLogic(manager);
            ConfigurationParameter       param0 = config.Get(ParametersLogic.Parameter.PAYMENTS_SHOW_CARD.ToString());

            if (param0 != null)
            {
                if (Helpers.ConfigDataTypeConverter.ConvertToBoolean(param0.Value) == true)
                {
                    tableLayoutPanel1.RowStyles[4].SizeType = SizeType.Absolute;

                    tableLayoutPanel1.RowStyles[4].Height = 0;
                }
            }
        }
        public DocumentDetailsDataSimple(string _mode, WareDocument document, List <WareDocumentDetail> documentDetails, WareDocumentDetail documentDetail)
        {
            InitializeComponent();
            manager       = new ContextManager();
            mode          = _mode;
            MessageL.Text = "Оберіть одиницю";

            Document        = document;
            DocumentDetails = documentDetails;
            DocumentDetail  = documentDetail;
            //categoriesUC1.Fill();
            //categoriesUC1.ExpandAll();
            wareSelectorUC1.Init("");

            ConfigurationParametersLogic config = new ConfigurationParametersLogic(manager);
            ConfigurationParameter       param0 = config.Get(ParametersLogic.Parameter.DOCUMENTDETAILS_SHOW_SECONDARY_UNIT.ToString());

            if (param0 != null)
            {
                SecondaryGroupGB.Visible = Helpers.ConfigDataTypeConverter.ConvertToBoolean(param0.Value);
            }

            ConfigurationParameter param1 = config.Get(ParametersLogic.Parameter.DOCUMENTDETAILS_SHOW_FONTSIZE.ToString());

            if (param1 != null)
            {
                float size = Helpers.ConfigDataTypeConverter.ConvertToFloat(param1.Value);
                wareSelectorUC1.FontSize = size;

                //this.Font = new Font(this.Font.Name, size);
            }

            ConfigurationParameter param2 = config.Get(ParametersLogic.Parameter.DOCUMENTDETAILS_SHOW_WARES_MINROWHEIGHT.ToString());

            if (param2 != null)
            {
                int size = Convert.ToInt32(param2.Value);
                wareSelectorUC1.MinRowHeight = size;
            }

            ConfigurationParameter param3 = config.Get(ParametersLogic.Parameter.DOCUMENTDETAILS_SHOW_WARES_VIEWMODE.ToString());

            if (param3 != null)
            {
                switch (param3.ToString().ToUpper())
                {
                case "TREEVIEW":
                {
                    wareSelectorUC1.CategoriesViewMode = UC.CategoriesUC.Mode.TreeView;
                    break;
                }

                case "BUTTON":
                {
                    wareSelectorUC1.CategoriesViewMode = UC.CategoriesUC.Mode.Button;
                    break;
                }
                }
            }
        }
Esempio n. 3
0
        public int Create(WareDocument document, int WareID, decimal UnitQuantity, decimal?SecondaryUnitQuantity,
                          decimal PriceForUnit, decimal?DiscountForUnit,
                          decimal?EndPriceForUnit, decimal EndPrice, int CurrencyID)
        {
            int result = 1;

            int userId            = Compas.Logic.Security.CurrentSecurityContext.Identity.ID;
            WareDocumentDetail sr = new WareDocumentDetail();

            sr.WareID       = WareID;
            sr.UnitQuantity = UnitQuantity;
            if (SecondaryUnitQuantity != null)
            {
                sr.SecondaryUnitQuantity = Convert.ToDecimal(SecondaryUnitQuantity);
            }

            sr.DiscountForUnit = DiscountForUnit;

            sr.CurrencyID = CurrencyID;


            context.AddToWareDocumentDetails(sr);

            WareRemainsLogic remainsLogic = new WareRemainsLogic(manager);

            //remainsLogic.UpdateCurrentRemainByDocumentDetail(sr);
            return(result);
        }
Esempio n. 4
0
        public int Create(WareDocument Document, CWCar Car)
        {
            int             result      = 1;
            WareDocumentCar documentCar = new WareDocumentCar();

            Document.WareDocumentCars.Add(documentCar);
            Car.WareDocumentCars.Add(documentCar);
            return(result);
        }
Esempio n. 5
0
        public int Create(WareDocument Document, StatesOfDocument State)
        {
            int result = 1;
            WareDocumentState DocumentState = new WareDocumentState();

            Document.WareDocumentStates.Add(DocumentState);
            State.WareDocumentStates.Add(DocumentState);
            return(result);
        }
Esempio n. 6
0
        public void UpdateDocumentPaymentSum(int DocumentID)
        {
            decimal      sum      = this.GetSumByDocumentID(DocumentID);
            WareDocument document = (from a in context.WareDocuments
                                     where a.ID == DocumentID
                                     select a).FirstOrDefault();

            if (document != null)
            {
                document.PaySum = sum;
            }
        }
Esempio n. 7
0
        public DocumentDetailsData(string _mode, WareDocument document, List <WareDocumentDetail> documentDetails, WareDocumentDetail documentDetail)
        {
            InitializeComponent();
            manager       = new ContextManager();
            mode          = _mode;
            MessageL.Text = "";

            Document        = document;
            DocumentDetails = documentDetails;
            DocumentDetail  = documentDetail;

            FillWares();
            FillPriceGroups();
            FillCurrencies();
            Fill();
            if (mode == "edit")
            {
            }
        }
Esempio n. 8
0
        public int Create(DateTime Date, decimal Suma, bool Active,
                          int DocumentID, int CurrencyID, int StructureObjectID, int PaymentTypeID, int?CardID, string CheckNumber)
        {
            int result             = 1;
            int userId             = Compas.Logic.Security.CurrentSecurityContext.Identity.ID;
            WareDocumentPayment sr = WareDocumentPayment.CreateWareDocumentPayment(1, Date, Suma, userId,
                                                                                   DateTime.Now, Active, DocumentID, CurrencyID, PaymentTypeID, StructureObjectID);

            //WareDocumentPayment sr = WareDocumentPayment.CreateWareDocumentType(ID, Name, Input, Output);
            if (CardID != null)
            {
                sr.CardID = CardID;
            }
            sr.CheckNumber = CheckNumber;
            context.AddToWareDocumentPayments(sr);
            WareDocument document = (from a in context.WareDocuments
                                     where a.ID == DocumentID
                                     select a).FirstOrDefault();

            document.PaySum = this.GetSumByDocumentID(DocumentID) + Suma;
            return(result);
        }
Esempio n. 9
0
        /// <summary>
        /// Конструктор форми створення і редагування документу
        /// </summary>
        /// <param name="_mode">режим - new або edit</param>
        /// <param name="_id">ыдентифыкатор документу для режиму редагування</param>
        /// <param name="_CashRegister">підключений принтер чеків(якщо немає то null)</param>
        public DocumentData(string _mode, int?_id, CashRegister _CashRegister)
        {
            InitializeComponent();
            cashRegister = _CashRegister;
            CompasLogger.Add(String.Format("Start opening doc form"), CompasLogger.Level.Info);
            manager = new ContextManager();
            mode    = _mode;

            id = _id;
            DetailsGV.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
            FillPayments();
            documentDetailsNew     = new List <WareDocumentDetail>();
            documentDetailsOld     = new List <WareDocumentDetail>();
            documentDetailsDeleted = new List <WareDocumentDetail>();
            employeesDetailsView   = new List <StaffEmployeeView>();
            documentsLogic         = new DocumentsLogic(manager);
            documentDetailsLogic   = new DocumentDetailsLogic(manager);
            if (mode == "new")
            {
                //створюємо документ в памяті
                document = documentsLogic.CreateEmpty();
            }

            if (mode == "edit")
            {
                //витягуємо документ в память
                document = documentsLogic.Get(Convert.ToInt32(id));
                //витягуємо детальну інформацію по документу
                documentDetailsOld  = documentDetailsLogic.GetAll(id);
                documentDetailsView = documentDetailsOld;
                FillEmployeeDetails();
            }
            CompasLogger.Add(String.Format("p1"), CompasLogger.Level.Info);
            Fill();

            CompasLogger.Add(String.Format("End opening doc form"), CompasLogger.Level.Info);
        }
Esempio n. 10
0
        /// <summary>
        /// Збереження даних документу
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SaveBt_Click(object sender, EventArgs e)
        {
            if (dxValidationProvider1.Validate() == true)
            {
                if (ContractorLUE.EditValue != null)
                {
                    document.ContractorID = Convert.ToInt32(ContractorLUE.EditValue);
                }
                if (CurrencyLUE.EditValue != null)
                {
                    document.CurrencyID = Convert.ToInt32(CurrencyLUE.EditValue);
                }
                if (DateDE.EditValue != null)
                {
                    document.Date = Convert.ToDateTime(DateDE.EditValue);
                }

                document.Description = DescriptionTE.Text;
                document.Address     = AddressTE.Text;
                document.Number      = NumberTE.Text;
                if (DocumentTypeLUE.EditValue != null)
                {
                    document.DocumentTypeID = Convert.ToInt32(DocumentTypeLUE.EditValue);
                }
                if (FromObjectLUE.EditValue != null)
                {
                    document.FromStructureObjectID = Convert.ToInt32(FromObjectLUE.EditValue);
                }
                if (ToObjectLUE.EditValue != null)
                {
                    document.ToStructureObjectD = Convert.ToInt32(ToObjectLUE.EditValue);
                }

                int enterpriseId = Convert.ToInt32(EnterprisesCB.SelectedValue);

                int?teamId = null;
                if (TeamsLUE.EditValue != null)
                {
                    teamId = Convert.ToInt32(TeamsLUE.EditValue);
                }

                //перезаписуємо дані працівників
                documentsLogic.DeleteDocumentEmployees(document, employeesDetailsView);
                foreach (StaffEmployeeView item in employeesDetailsView)
                {
                    documentsLogic.SaveDocumentWithEmployees(document, item.Employee, teamId, mode);
                }

                if (cardId != null)
                {
                    document.CardID = cardId;
                }

                document.DocumentSum  = documentSum;
                document.EnterpriseID = enterpriseId;
                if (mode == "new")
                {
                    document.CreatedDate   = DateTime.Now;
                    document.CreatedUserID = Compas.Logic.Security.CurrentSecurityContext.Identity.ID;
                    int userId = Compas.Logic.Security.CurrentSecurityContext.Identity.ID;
                    Logic.Staff.StaffEmployeeLogic staffLogic = new Logic.Staff.StaffEmployeeLogic(manager);
                    StaffEmployee employee = staffLogic.GetByUserID(userId);
                    if (employee != null)
                    {
                        document.CreatedEmployeeID = employee.ID;
                    }

                    //foreach (WareDocumentDetail detail in documentDetailsNew)
                    //{
                    //    documentDetailsLogic.SaveDocumentDetail(detail);
                    //}
                    documentsLogic.SaveDocumentWithDetails(document, documentDetailsView, "new");
                }
                if (mode == "edit")
                {
                    documentDetailsLogic.DeleteAllForDocument(document.ID);
                    documentsLogic.SaveDocumentWithDetails(document, documentDetailsView, "edit");
                    //documentsLogic.
                }

                //якщо вказані дані про авто до перевіряємо чи дані вже існують
                string carNumber = CarNumberTE.Text;
                if (carNumber.Trim().Length > 0)
                {
                    CWCarsLogic carsLogic = new CWCarsLogic(manager);

                    CWCar car = null;
                    categoryId = null;
                    if (CarCategoriesCB.SelectedItem != null)
                    {
                        if (Convert.ToInt32(CarCategoriesCB.SelectedValue) > 0)
                        {
                            categoryId = Convert.ToInt32(CarCategoriesCB.SelectedValue);
                        }
                    }
                    List <CWCar> cars = carsLogic.GetAll(CarNumberTE.Text, modelId, brandId);
                    if (cars.Count > 0)
                    {
                        car = cars.FirstOrDefault();
                    }
                    else
                    {
                        car = carsLogic.Create(brandId, modelId, carNumber, categoryId);
                    }

                    if (ContractorLUE.EditValue != null)
                    {
                        CWContractorCarsLogic contractorCars = new CWContractorCarsLogic(manager);
                        contractorCars.Create(Convert.ToInt32(document.ContractorID), car);
                    }

                    DocumentCarsLogic documentCarsLogic = new DocumentCarsLogic(manager);
                    documentCarsLogic.Create(document, car);
                }


                //Зберігаємо зміни
                manager.Save();

                //Здійснюємо перерахунок залишків
                Compas.Logic.Wares.WareRemainsLogic remainsLogic = new Compas.Logic.Wares.WareRemainsLogic(manager);
                foreach (WareDocumentDetail detail in documentDetailsView)
                {
                    if (document.FromStructureObjectID != null)
                    {
                        remainsLogic.UpdateCurrentRemainByDocumentDetail(document.Date, detail.WareID, document.FromStructureObjectID, null);
                    }
                    if (document.ToStructureObjectD != null)
                    {
                        remainsLogic.UpdateCurrentRemainByDocumentDetail(document.Date, detail.WareID, document.ToStructureObjectD, null);
                    }
                }


                manager.Save();
                int documentId = document.ID;
                if (AddPaymentCB.Checked == true)
                {
                    DocumentPaymentData paymentForm = new DocumentPaymentData(documentId, document, cashRegister);
                    paymentForm.ShowDialog();
                }

                if (CloseAfterPayment == true)
                {
                    this.Close();
                }
                else
                {
                    //після збереження даного документу - позиції документа очищаються і форма готова для створення нового документа
                    CompasLogger.Add(String.Format("Start opening doc form"), CompasLogger.Level.Info);
                    manager = new ContextManager();

                    DetailsGV.AutoSizeRowsMode = DataGridViewAutoSizeRowsMode.AllCells;
                    //FillPayments();
                    documentDetailsNew     = new List <WareDocumentDetail>();
                    documentDetailsOld     = new List <WareDocumentDetail>();
                    documentDetailsDeleted = new List <WareDocumentDetail>();
                    documentDetailsView    = new List <WareDocumentDetail>();
                    employeesDetailsView   = new List <StaffEmployeeView>();
                    documentsLogic         = new DocumentsLogic(manager);
                    documentDetailsLogic   = new DocumentDetailsLogic(manager);
                    if (mode == "new")
                    {
                        //створюємо документ в памяті
                        document = documentsLogic.CreateEmpty();
                    }
                    documentDetailsViewer.Clear();
                    FillDetails();
                }
            }
        }
Esempio n. 11
0
 public DocumentView(WareDocument Document)
 {
     document = Document;
 }