예제 #1
0
        /// <summary>
        /// Sets the accounts.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns>BudgetItemResponse.</returns>
        public BudgetItemResponse SetBudgetItems(BudgetItemRequest request)
        {
            var response = new BudgetItemResponse();

            var budgetItemEntity = request.BudgetItem;

            if (request.Action != PersistType.Delete)
            {
                if (!budgetItemEntity.Validate())
                {
                    foreach (string error in budgetItemEntity.ValidationErrors)
                    {
                        response.Message += error + Environment.NewLine;
                    }
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }
            }
            try
            {
                if (request.Action == PersistType.Insert)
                {
                    var budgetitems = BudgetItemDao.GetBudgetItemsByCode(budgetItemEntity.BudgetItemCode);
                    if (budgetitems.Count > 0)
                    {
                        response.Acknowledge = AcknowledgeType.Failure;
                        response.Message     = @"Mã mục lục ngân sách " + budgetItemEntity.BudgetItemCode + @" đã tồn tại !";
                        return(response);
                    }
                    budgetItemEntity.BudgetItemId = BudgetItemDao.InsertBudgetItem(budgetItemEntity);
                    response.Message = null;
                }
                else if (request.Action == PersistType.Update)
                {
                    response.Message = BudgetItemDao.UpdateBudgetItem(budgetItemEntity);
                }
                else
                {
                    var budgetItemEntityForDelete = BudgetItemDao.GetBudgetItem(request.BudgetItemId);
                    response.Message = BudgetItemDao.DeleteBudgetItem(budgetItemEntityForDelete);
                }
            }
            catch (Exception ex)
            {
                response.Acknowledge = AcknowledgeType.Failure;
                response.Message     = ex.Message;
                return(response);
            }

            response.BudgetItemId = budgetItemEntity != null ? budgetItemEntity.BudgetItemId : 0;
            response.Acknowledge  = response.Message != null ? AcknowledgeType.Failure : AcknowledgeType.Success;
            return(response);
        }
예제 #2
0
        /// <summary>
        /// Gets the accounts.
        /// </summary>
        /// <param name="request">The request.</param>
        /// <returns>BudgetItemResponse.</returns>
        public BudgetItemResponse GetBudgetItems(BudgetItemRequest request)
        {
            var response = new BudgetItemResponse();

            if (request.LoadOptions.Contains("BudgetItems"))
            {
                if (request.LoadOptions.Contains("IsActive"))
                {
                    if (request.LoadOptions.Contains("ItemAndSubItem"))
                    {
                        response.BudgetItems = BudgetItemDao.GetBudgetItemAndSubItems(request.BudgetItemType, request.IsActive);
                    }
                    else
                    {
                        response.BudgetItems = BudgetItemDao.GetBudgetItemsActive();
                    }
                }
                else if (request.LoadOptions.Contains("Detail"))
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItems(request.BudgetItemType);
                }
                else if (request.LoadOptions.Contains("Receipt"))
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItemsByIsReceipt(request.IsReceipt);
                }
                else if (request.LoadOptions.Contains("ReceiptForEstimate"))
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItemsByIsReceiptForEstimate(request.IsReceipt);
                }
                else if (request.LoadOptions.Contains("PayVoucher"))
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItemsByPayVoucher();
                }
                else if (request.LoadOptions.Contains("CapitalAllocate"))
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItemsByCapitalAllocate();
                }
                else
                {
                    response.BudgetItems = BudgetItemDao.GetBudgetItems();
                }
            }
            if (request.LoadOptions.Contains("BudgetItem"))
            {
                response.BudgetItem = BudgetItemDao.GetBudgetItem(request.BudgetItemId);
            }
            return(response);
        }
        public BudgetItemResponse DeleteBudgetItemConvert()
        {
            var response = new BudgetItemResponse {
                Acknowledge = AcknowledgeType.Success
            };

            try
            {
                response.Message = BudgetItemDao.DeleteBudgetItemConvert();

                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;
                return(response);
            }
        }
        /// <summary>
        /// Updates the account category.
        /// </summary>
        /// <param name="budgetItemEntity">The budget item entity.</param>
        /// <returns>
        /// AccountCategoryResponse.
        /// </returns>
        public BudgetItemResponse UpdateBudgetItem(BudgetItemEntity budgetItemEntity)
        {
            var response = new BudgetItemResponse {
                Acknowledge = AcknowledgeType.Success
            };

            try
            {
                if (!budgetItemEntity.Validate())
                {
                    foreach (string error in budgetItemEntity.ValidationErrors)
                    {
                        response.Message += error + Environment.NewLine;
                    }
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }

                var budgetItem = BudgetItemDao.GetBudgetItemsByCode(budgetItemEntity.BudgetItemCode.Trim());
                if (budgetItem != null)
                {
                    if (budgetItem.BudgetItemId != budgetItemEntity.BudgetItemId)
                    {
                        response.Acknowledge = AcknowledgeType.Failure;
                        response.Message     = @"Mã Mục/Tiểu mục " + budgetItemEntity.BudgetItemCode.Trim() + @" đã tồn tại !";
                        return(response);
                    }
                }

                response.Message = BudgetItemDao.UpdateBudgetItem(budgetItemEntity);
                if (!string.IsNullOrEmpty(response.Message))
                {
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }
                response.BudgetItemId = budgetItemEntity.BudgetItemId;
                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;
                return(response);
            }
        }
        /// <summary>
        /// Deletes the account category.
        /// </summary>
        /// <param name="budgetItemId">The budget item identifier.</param>
        /// <returns>
        /// AccountCategoryResponse.
        /// </returns>
        public BudgetItemResponse DeleteBudgetItem(string budgetItemId)
        {
            var response = new BudgetItemResponse {
                Acknowledge = AcknowledgeType.Success
            };

            try
            {
                var budgetItemEntity = BudgetItemDao.GetBudgetItem(budgetItemId);
                response.Message = BudgetItemDao.DeleteBudgetItem(budgetItemEntity);

                if (!string.IsNullOrEmpty(response.Message))
                {
                    if (response.Message.Contains("FK_BUBudgetReserveDetail_BudgetItem") ||
                        response.Message.Contains("FK_FixedAsset_BudgetItem_BudgetItemCode") ||
                        response.Message.Contains("FK_FixedAsset_BudgetItem_BudgetSubItemCode") ||
                        response.Message.Contains("FK_BUBudgetReserveDetail_BudgetSubItem") ||
                        response.Message.Contains("FK_CAPaymentDetail_BudgetItem") ||
                        response.Message.Contains("FK_CAPaymentDetail_BudgetItem1") ||
                        response.Message.Contains("FK_BUPlanWithdrawDetail_BudgetItem") ||
                        response.Message.Contains("FK_BUPlanWithdrawDetail_BudgetItem1") ||
                        response.Message.Contains("FK_GLVoucherDetail_BudgetItem") ||
                        response.Message.Contains("FK_GLVoucherDetail_BudgetItem1") ||
                        response.Message.Contains("FK_BUCommitmentRequestDetail_BudgetItem") ||
                        response.Message.Contains("FK_BUCommitmentRequestDetail_BudgetSubItem") ||
                        response.Message.Contains("FK_OpeningAccountEntry_BudgetItem") ||
                        response.Message.Contains("FK_OpeningAccountEntry_BudgetItem1") ||
                        response.Message.Contains("FK_BUPlanAdjustmentDetail_BudgetItem1") ||
                        response.Message.Contains("FK_FADepreciationDetail_BudgetItem1") ||
                        response.Message.Contains("FK_BUCommitmentAdjustmentDetail_BudgetItem") ||
                        response.Message.Contains("FK_BAWithDrawDetailPurchase_BudgetItem") ||
                        response.Message.Contains("FK_BAWithDrawDetailPurchase_BudgetItem1") ||
                        response.Message.Contains("FK_BUCommitmentAdjustmentDetail_BudgetSubItem") ||
                        response.Message.Contains("FK_BUTransferDetailPurchase_BudgetItem1") ||
                        response.Message.Contains("FK_CAPaymentDetailFixedAsset_BudgetItem1") ||
                        response.Message.Contains("FK_BADepositDetail_BudgetItem") ||
                        response.Message.Contains("FK_BADepositDetail_BudgetItem1") ||
                        response.Message.Contains("FK_BUPlanAdjustmentDetail_BudgetItem") ||
                        response.Message.Contains("FK_FADepreciationDetail_BudgetItem") ||
                        response.Message.Contains("FK_BAWithDrawDetailFixedAsset_BudgetItem") ||
                        response.Message.Contains("FK_BAWithDrawDetailFixedAsset_BudgetItem1") ||
                        response.Message.Contains("FK_BADepositDetailSale_BudgetItem") ||
                        response.Message.Contains("FK_BADepositDetailSale_BudgetItem1") ||
                        response.Message.Contains("FK_BUTransferDetailPurchase_BudgetItem") ||
                        response.Message.Contains("FK_CAPaymentDetailFixedAsset_BudgetItem") ||
                        response.Message.Contains("FK_CAPaymentDetailPurchase_BudgetItem") ||
                        response.Message.Contains("FK_CAPaymentDetailPurchase_BudgetItem1") ||
                        response.Message.Contains("FK_CAReceiptDetailFixedAsset_BudgetItem"))
                    {
                        response.Message = @"Bạn không thể xóa Mục/ Tiểu mục " + budgetItemEntity.BudgetItemCode + " vì đã có phát sinh trong chứng từ hoặc danh mục liên quan!";
                    }
                    response.Acknowledge = AcknowledgeType.Failure;
                    return(response);
                }

                response.BudgetItemId = budgetItemEntity.BudgetItemId;
                return(response);
            }
            catch (Exception ex)
            {
                response.Message = ex.Message;
                return(response);
            }
        }