Exemplo n.º 1
0
        private bool purchaseOrderDetailsIsFull(ArrayList list)
        {
            bool isRet = true;

            for (int rowIndex = 0; rowIndex < list.Count; rowIndex++)
            {
                PurchaseOrderDetailsTable record = new PurchaseOrderDetailsTable();
                record = (PurchaseOrderDetailsTable)list[rowIndex];

                //string price = Convert.ToString(record.price);
                //string value = Convert.ToString(record.value);

                if (record.price == 0)
                {
                    MessageBoxExtend.messageWarning("第[" + record.rowNumber + "]信息中物料单价不能为空");
                    isRet = false;
                    break;
                }

                if (record.value == 0)
                {
                    MessageBoxExtend.messageWarning("第[" + record.rowNumber + "]信息中物料数量不能为空");
                    isRet = false;
                    break;
                }
            }

            return(isRet);
        }
Exemplo n.º 2
0
        public IHttpActionResult PutPurchaseOrderDetailsTable(int id, PurchaseOrderDetailsTable purchaseOrderDetailsTable)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != purchaseOrderDetailsTable.PurchaseOrderDetailsId)
            {
                return(BadRequest());
            }

            db.Entry(purchaseOrderDetailsTable).State = EntityState.Modified;

            try
            {
                db.SaveChanges();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!PurchaseOrderDetailsTableExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(StatusCode(HttpStatusCode.NoContent));
        }
Exemplo n.º 3
0
        private void writeBillDetailsInfoFromBillNumber(string billNumber)
        {
            // DataGridView 赋值
            SortedDictionary <int, PurchaseOrderDetailsTable> purchaseOrderDetails =
                PurchaseOrderDetails.getInctance().getPurchaseInfoFromBillNumber(billNumber);

            foreach (KeyValuePair <int, PurchaseOrderDetailsTable> index in purchaseOrderDetails)
            {
                PurchaseOrderDetailsTable record = new PurchaseOrderDetailsTable();
                record = index.Value;

                int rowIndex = Convert.ToInt32(record.rowNumber.ToString()) - 1;

                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielNumber].Value     = record.materielID;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielName].Value       = record.materielName;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Model].Value              = record.materielModel;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Brand].Value              = record.brand;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Unit].Value               = record.materielUnitPurchase;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Price].Value              = record.price;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Value].Value              = record.value;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Turnover].Value           = record.sumMoney;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.TransportationCost].Value = record.transportationCost;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.OtherCost].Value          = record.otherCost;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.SumTurnover].Value        = record.totalMoney;
            }
        }
Exemplo n.º 4
0
        private ArrayList getPurchaseOrderDetailsValue()
        {
            ArrayList list = new ArrayList();

            for (int rowIndex = 0; rowIndex < DateGridVeiwListDataListRowCount; rowIndex++)
            {
                if (this.dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielNumber].Value.ToString().Length == 0)
                {
                    break;
                }
                else
                {
                    PurchaseOrderDetailsTable record = new PurchaseOrderDetailsTable();

                    record.rowNumber          = dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.RowNum].Value.ToString();
                    record.materielID         = Convert.ToInt32(dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielNumber].Value.ToString());
                    record.price              = Convert.ToDouble(dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Price].Value.ToString());
                    record.value              = Convert.ToDouble(dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Value].Value.ToString());
                    record.transportationCost = Convert.ToDouble(dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.TransportationCost].Value.ToString());
                    record.otherCost          = Convert.ToDouble(dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.OtherCost].Value.ToString());
                    record.billNumber         = this.labelBillNumber.Text;

                    list.Add(record);
                }
            }

            return(list);
        }
Exemplo n.º 5
0
        public IHttpActionResult GetPurchaseOrderDetailsTable(int id)
        {
            PurchaseOrderDetailsTable purchaseOrderDetailsTable = db.PurchaseOrderDetailsTables.Find(id);

            if (purchaseOrderDetailsTable == null)
            {
                return(NotFound());
            }

            return(Ok(purchaseOrderDetailsTable));
        }
Exemplo n.º 6
0
        public IHttpActionResult PostPurchaseOrderDetailsTable(PurchaseOrderDetailsTable purchaseOrderDetailsTable)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            db.PurchaseOrderDetailsTables.Add(purchaseOrderDetailsTable);
            db.SaveChanges();

            return(CreatedAtRoute("DefaultApi", new { id = purchaseOrderDetailsTable.PurchaseOrderDetailsId }, purchaseOrderDetailsTable));
        }
Exemplo n.º 7
0
        public IHttpActionResult DeletePurchaseOrderDetailsTable(int id)
        {
            PurchaseOrderDetailsTable purchaseOrderDetailsTable = db.PurchaseOrderDetailsTables.Find(id);

            if (purchaseOrderDetailsTable == null)
            {
                return(NotFound());
            }

            db.PurchaseOrderDetailsTables.Remove(purchaseOrderDetailsTable);
            db.SaveChanges();

            return(Ok(purchaseOrderDetailsTable));
        }
        public IHttpActionResult PostPurchaseDetailsTable(PurchaseOrderDetailsTable purchaseOrderDetail)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(BadRequest(ModelState));
                }

                db.PurchaseOrderDetailsTables.Add(purchaseOrderDetail);
                db.SaveChanges();

                return(Ok());
            }
            catch (Exception ex)
            {
                return(BadRequest());
            }
        }
Exemplo n.º 9
0
        private void readBillInfoToUI()
        {
            // 单据表头表尾信息
            m_purchaseOrder = PurchaseOrder.getInctance().getPurchaseInfoFromBillNumber(m_billNumber);

            m_supplierPkey = m_purchaseOrder.supplierId;

            this.labelPurchaseName.Visible    = true;
            this.labelTradingDate.Visible     = true;
            this.labelBillNumber.Visible      = true;
            this.labelPurchaseType.Visible    = true;
            this.labelDeliveryDate.Visible    = true;
            this.labelPaymentDate.Visible     = true;
            this.labelSummary.Visible         = true;
            this.labelBusinessPeople.Visible  = true;
            this.labelMakeBillStaff.Visible   = true;
            this.labelReviewBillStaff.Visible = true;
            this.labelReviewDate.Visible      = true;

            this.labelPurchaseName.Text = m_purchaseOrder.supplierName;
            this.labelTradingDate.Text  = m_purchaseOrder.tradingDate;
            this.labelBillNumber.Text   = m_purchaseOrder.billNumber;
            this.labelPurchaseType.Text = m_purchaseOrder.purchaseType;
            this.labelDeliveryDate.Text = m_purchaseOrder.deliveryDate;
            this.labelPaymentDate.Text  = m_purchaseOrder.paymentDate;
            this.labelSummary.Text      = m_purchaseOrder.exchangesUnit;

            m_staffPkey = m_purchaseOrder.businessPeopleId;
            this.labelBusinessPeople.Text = m_purchaseOrder.businessPeopleName;
            this.labelMakeBillStaff.Text  = m_purchaseOrder.makeOrderStaffName;

            // DataGridView 赋值
            SortedDictionary <int, PurchaseOrderDetailsTable> purchaseOrderDetails =
                PurchaseOrderDetails.getInctance().getPurchaseInfoFromBillNumber(m_billNumber);

            foreach (KeyValuePair <int, PurchaseOrderDetailsTable> index in purchaseOrderDetails)
            {
                PurchaseOrderDetailsTable record = new PurchaseOrderDetailsTable();
                record = index.Value;

                int rowIndex = Convert.ToInt32(record.rowNumber.ToString()) - 1;

                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielNumber].Value     = record.materielID;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.MatetielName].Value       = record.materielName;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Model].Value              = record.materielModel;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Unit].Value               = record.materielUnitPurchase;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Price].Value              = record.price;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Value].Value              = record.value;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.Turnover].Value           = record.sumMoney;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.TransportationCost].Value = record.transportationCost;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.OtherCost].Value          = record.otherCost;
                dataGridViewDataList.Rows[rowIndex].Cells[(int)DataGridColumnName.SumTurnover].Value        = record.totalMoney;
            }

            // 如果单据已审核,则禁用页面所有控件
            if (m_purchaseOrder.isReview == "1")
            {
                this.labelReviewBillStaff.Text = m_purchaseOrder.orderrReviewName;
                this.labelReviewDate.Text      = m_purchaseOrder.reviewDate;
                this.panelIsReview.Visible     = true;

                this.save.Enabled = false;
                this.toolStripButtonReview.Enabled  = false;
                this.dataGridViewDataList.ReadOnly  = true;
                this.dataGridViewDataCount.ReadOnly = true;

                this.panelPurchaseName.Visible = false;
                this.panelTradingDate.Visible  = false;
                this.panelPurchaseType.Visible = false;
                this.panelDeliveryDate.Visible = false;
                this.panelPaymentDate.Visible  = false;
                this.panelSummary.Visible      = false;

                this.textBoxPurchaseName.Visible        = false;
                this.dateTimePickerTradingDate.Visible  = false;
                this.comboBoxPurchaseType.Visible       = false;
                this.dateTimePickerDeliveryDate.Visible = false;
                this.dateTimePickerPaymentDate.Visible  = false;
                this.textBoxSummary.Visible             = false;

                this.panelBusinessPeople.Visible = false;
            }
            else
            {
                this.labelReviewBillStaff.Visible = false;
                this.labelReviewDate.Visible      = false;
            }
        }
Exemplo n.º 10
0
        public IHttpActionResult PostPurchase([FromBody] MvcPurchaseViewModel PurchaseViewModel)
        {
            using (DBEntities entities = new DBEntities())
            {
                using (DbContextTransaction transaction = entities.Database.BeginTransaction(System.Data.IsolationLevel.ReadCommitted))
                {
                    try
                    {
                        PurchaseOrderTable _PTable = new PurchaseOrderTable();

                        _PTable.CompanyId              = PurchaseViewModel.CompanyId;
                        _PTable.UserId                 = PurchaseViewModel.UserId;
                        _PTable.PurchaseID             = PurchaseViewModel.PurchaseId.ToString();
                        _PTable.VenderId               = PurchaseViewModel.VenderId;
                        _PTable.PurchaseRefNumber      = PurchaseViewModel.PurchaseRefNumber;
                        _PTable.PurchaseDate           = Convert.ToDateTime(PurchaseViewModel.PurchaseDate);
                        _PTable.PurchaseDueDate        = PurchaseViewModel.PurchaseDueDate;
                        _PTable.PurchaseSubTotal       = PurchaseViewModel.PurchaseSubTotal;
                        _PTable.PurchaseDiscountAmount = PurchaseViewModel.PurchaseDiscountAmount;
                        _PTable.PurchaseTotoalAmount   = PurchaseViewModel.PurchaseTotoalAmount;
                        _PTable.PurchaseVenderNote     = PurchaseViewModel.PurchaseVenderNote;
                        _PTable.Vat6   = PurchaseViewModel.Vat6;
                        _PTable.Vat21  = PurchaseViewModel.Vat21;
                        _PTable.Status = "open";
                        _PTable.Type   = StatusEnum.Goods.ToString();

                        _PTable = entities.PurchaseOrderTables.Add(_PTable);
                        entities.SaveChanges();

                        if (PurchaseViewModel.PurchaseOrderList != null)
                        {
                            foreach (PurchaseOrderDetailsTable item in PurchaseViewModel.PurchaseOrderList)
                            {
                                PurchaseOrderDetailsTable purchadeDetail = new PurchaseOrderDetailsTable();
                                purchadeDetail.PurchaseOrderDetailsId = item.PurchaseOrderDetailsId;
                                purchadeDetail.PurchaseItemId         = item.PurchaseItemId;
                                purchadeDetail.PurchaseDescription    = item.PurchaseDescription;
                                purchadeDetail.PurchaseQuantity       = item.PurchaseQuantity;
                                purchadeDetail.PurchaseItemRate       = item.PurchaseItemRate;
                                purchadeDetail.PurchaseTotal          = item.PurchaseTotal;
                                purchadeDetail.Type                  = item.Type;
                                purchadeDetail.RowSubTotal           = item.RowSubTotal;
                                purchadeDetail.PurchaseVatPercentage = item.PurchaseVatPercentage;
                                purchadeDetail.PurchaseId            = _PTable.PurchaseOrderID;
                                purchadeDetail.ServiceDate           = item.ServiceDate;
                                entities.PurchaseOrderDetailsTables.Add(purchadeDetail);
                                entities.SaveChanges();
                            }
                        }

                        AccountTransictionTable Account = new AccountTransictionTable();
                        Account.TransictionDate       = DateTime.Now;
                        Account.TransictionNumber     = base64Guid;
                        Account.TransictionType       = "Purchase";
                        Account.CreationTime          = DateTime.Now.TimeOfDay;
                        Account.AddedBy               = 1;
                        Account.FK_CompanyId          = PurchaseViewModel.CompanyId;
                        Account.FKPaymentTerm         = 1;
                        Account.TransictionRefrenceId = _PTable.PurchaseOrderID.ToString();
                        //Accounts payable  Transaction
                        int Accountpayble = AccountIdByName("Accounts payable", (int)PurchaseViewModel.CompanyId);

                        if (Accountpayble != 0)
                        {
                            Account.Dr           = 0.00;
                            Account.Cr           = PurchaseViewModel.PurchaseTotoalAmount;
                            Account.FK_AccountID = Accountpayble;
                            entities.AccountTransictionTables.Add(Account);
                            entities.SaveChanges();
                        }
                        // Cost Of Goods Transaction
                        int CostOfGood = AccountIdByName("Cost Of Goods", (int)PurchaseViewModel.CompanyId);
                        if (CostOfGood != 0)
                        {
                            Account.Cr           = 0.00;
                            Account.Dr           = PurchaseViewModel.PurchaseSubTotal;
                            Account.FK_AccountID = CostOfGood;
                            entities.AccountTransictionTables.Add(Account);
                            entities.SaveChanges();
                        }

                        // Input VAT Trnsaction
                        int VatAccountId = AccountIdByName("Input VAT", (int)PurchaseViewModel.CompanyId);

                        if (VatAccountId != 0)
                        {
                            Account.Cr           = 0.00;
                            Account.Dr           = PurchaseViewModel.Vat21 + PurchaseViewModel.Vat6;
                            Account.FK_AccountID = VatAccountId;
                            entities.AccountTransictionTables.Add(Account);
                            int Id = entities.SaveChanges();
                        }

                        MvcPurchaseModel pModel = new MvcPurchaseModel();
                        pModel.PurchaseOrderID = _PTable.PurchaseOrderID;
                        transaction.Commit();
                        return(Ok(pModel));
                    }
                    catch (Exception)
                    {
                        transaction.Rollback();
                        return(BadRequest());
                    }
                }
            }
        }
Exemplo n.º 11
0
        public IHttpActionResult PutPurchaseTable(int id, MvcPurchaseViewModel PViewModel)
        {
            string Ref = PViewModel.PurchaseOrderID.ToString();
            //accountTransictionTable.CreationTime = null;

            PurchaseOrderTable PTable = new PurchaseOrderTable();

            using (DBEntities _dbcotext = new DBEntities())
            {
                using (DbContextTransaction transaction = _dbcotext.Database.BeginTransaction(System.Data.IsolationLevel.ReadCommitted))
                {
                    try
                    {
                        PTable.PurchaseID             = PViewModel.PurchaseId.ToString();
                        PTable.PurchaseOrderID        = Convert.ToInt32(PViewModel.PurchaseOrderID);
                        PTable.PurchaseRefNumber      = PViewModel.PurchaseRefNumber;
                        PTable.CompanyId              = PViewModel.CompanyId;
                        PTable.VenderId               = PViewModel.VenderId;
                        PTable.UserId                 = PViewModel.UserId;
                        PTable.PurchaseDate           = PViewModel.PurchaseDate;
                        PTable.PurchaseDueDate        = PViewModel.PurchaseDueDate;
                        PTable.PurchaseSubTotal       = PViewModel.PurchaseSubTotal;
                        PTable.PurchaseDiscountAmount = PViewModel.PurchaseDiscountAmount;
                        PTable.PurchaseTotoalAmount   = PViewModel.PurchaseTotoalAmount;
                        PTable.PurchaseVenderNote     = PViewModel.PurchaseVenderNote;
                        PTable.Vat6   = PViewModel.Vat6;
                        PTable.Vat21  = PViewModel.Vat21;
                        PTable.Status = "open";
                        PTable.Type   = StatusEnum.Goods.ToString();

                        _dbcotext.Entry(PTable).State = EntityState.Modified;
                        _dbcotext.SaveChanges();

                        if (PViewModel.PurchaseOrderList != null)
                        {
                            foreach (PurchaseOrderDetailsTable item in PViewModel.PurchaseOrderList)
                            {
                                PurchaseOrderDetailsTable DTable = new PurchaseOrderDetailsTable();
                                DTable.PurchaseOrderDetailsId = item.PurchaseOrderDetailsId;
                                DTable.PurchaseItemId         = item.PurchaseItemId;
                                DTable.PurchaseDescription    = item.PurchaseDescription;
                                DTable.PurchaseQuantity       = item.PurchaseQuantity;
                                DTable.PurchaseItemRate       = item.PurchaseItemRate;
                                DTable.Type                  = item.Type;
                                DTable.RowSubTotal           = item.RowSubTotal;
                                DTable.PurchaseDescription   = item.PurchaseDescription;
                                PTable.VenderId              = PViewModel.VenderId;
                                DTable.ServiceDate           = item.ServiceDate;
                                PTable.CompanyId             = PViewModel.CompanyId;
                                DTable.PurchaseTotal         = item.PurchaseTotal;
                                DTable.PurchaseVatPercentage = item.PurchaseVatPercentage;
                                DTable.PurchaseId            = PViewModel.PurchaseOrderID;

                                if (DTable.PurchaseOrderDetailsId == 0)
                                {
                                    _dbcotext.PurchaseOrderDetailsTables.Add(DTable);
                                    _dbcotext.SaveChanges();
                                }
                                else
                                {
                                    _dbcotext.Entry(DTable).State = EntityState.Modified;
                                    _dbcotext.SaveChanges();
                                }
                            }

                            AccountTransictionTable Account = new AccountTransictionTable();
                            Account.TransictionDate       = DateTime.Now;
                            Account.TransictionNumber     = base64Guid;
                            Account.TransictionType       = "Purchase";
                            Account.CreationTime          = DateTime.Now.TimeOfDay;
                            Account.AddedBy               = PViewModel.UserId;
                            Account.FK_CompanyId          = PViewModel.CompanyId;
                            Account.FKPaymentTerm         = 1;
                            Account.TransictionRefrenceId = PTable.PurchaseOrderID.ToString();

                            //Accounts payable  Transaction
                            List <AccountTransictionTable> List = new List <AccountTransictionTable>();
                            List = _dbcotext.AccountTransictionTables.Where(t => t.TransictionRefrenceId == Ref.ToString()).ToList();
                            _dbcotext.AccountTransictionTables.RemoveRange(_dbcotext.AccountTransictionTables.Where(F => F.TransictionRefrenceId == Ref.ToString()));
                            _dbcotext.SaveChanges();

                            int Accountpayble = AccountIdByName("Accounts payable", (int)PViewModel.CompanyId);

                            if (Accountpayble != 0)
                            {
                                Account.Dr           = 0.00;
                                Account.Cr           = PViewModel.PurchaseTotoalAmount;
                                Account.FK_AccountID = Accountpayble;
                                _dbcotext.AccountTransictionTables.Add(Account);
                                _dbcotext.SaveChanges();
                            }

                            // Cost Of Goods Transaction
                            int CostOfGood = AccountIdByName("Cost Of Goods", (int)PViewModel.CompanyId);
                            if (CostOfGood != 0)
                            {
                                Account.Cr           = 0.00;
                                Account.Dr           = PViewModel.PurchaseSubTotal;
                                Account.FK_AccountID = CostOfGood;
                                _dbcotext.AccountTransictionTables.Add(Account);
                                _dbcotext.SaveChanges();
                            }

                            // Input VAT Trnsaction
                            int VatAccountId = AccountIdByName("Input VAT", (int)PViewModel.CompanyId);

                            if (VatAccountId != 0)
                            {
                                Account.Cr           = 0.00;
                                Account.Dr           = PViewModel.Vat21 + PViewModel.Vat6;
                                Account.FK_AccountID = VatAccountId;
                                _dbcotext.AccountTransictionTables.Add(Account);
                                int Id = _dbcotext.SaveChanges();
                            }


                            transaction.Commit();
                            return(Ok());
                        }
                    }
                    catch (Exception)
                    {
                        transaction.Rollback();
                        return(BadRequest());
                    }
                    return(BadRequest());
                }
            }
            /////db.Entry(PurchaseTable).State = EntityState.Modified;
            //db.SaveChanges();
            //        return Ok(PurchaseTable);
        }