public IList <PRMBOQFloorDetailEntity> GetPagedData(Int32 startRowIndex, Int32 pageSize, String sortExpression)
        {
            IList <PRMBOQFloorDetailEntity> pRMBOQFloorDetailEntityList = new List <PRMBOQFloorDetailEntity>();

            try
            {
                if (pageSize == -1)
                {
                    pageSize = 1000000000;
                }

                if (String.IsNullOrEmpty(sortExpression))
                {
                    sortExpression = PRMBOQFloorDetailEntity.FLD_NAME_BOQFloorDetailID + " " + SQLConstants.SORT_ORDER_DESCENDING;
                }

                startRowIndex = Convert.ToInt32(startRowIndex / pageSize) + 1;

                pRMBOQFloorDetailEntityList = FCCPRMBOQFloorDetail.GetFacadeCreate().GetIL(startRowIndex, pageSize, sortExpression, null, DatabaseOperationType.LoadPagedWithSortExpression);

                if (pRMBOQFloorDetailEntityList != null && pRMBOQFloorDetailEntityList.Count > 0)
                {
                    totalRowCount = pRMBOQFloorDetailEntityList[0].TotalRowCount;
                }
            }
            catch (Exception ex)
            {
            }

            return(pRMBOQFloorDetailEntityList ?? new List <PRMBOQFloorDetailEntity>());
        }
Example #2
0
        private void SavePRMBOQFloorDetailEntity()
        {
            if (IsValid)
            {
                try
                {
                    PRMBOQFloorDetailEntity pRMBOQFloorDetailEntity = BuildPRMBOQFloorDetailEntity();

                    Int64 result = -1;

                    if (pRMBOQFloorDetailEntity.IsNew)
                    {
                        result = FCCPRMBOQFloorDetail.GetFacadeCreate().Add(pRMBOQFloorDetailEntity, DatabaseOperationType.Add, TransactionRequired.No);
                    }
                    else
                    {
                        String filterExpression = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQFloorDetailID, pRMBOQFloorDetailEntity.BOQFloorDetailID.ToString(), SQLMatchType.Equal);
                        result = FCCPRMBOQFloorDetail.GetFacadeCreate().Update(pRMBOQFloorDetailEntity, filterExpression, DatabaseOperationType.Update, TransactionRequired.No);
                    }

                    if (result > 0)
                    {
                        _BOQFloorDetailID        = 0;
                        _PRMBOQFloorDetailEntity = new PRMBOQFloorDetailEntity();
                        PrepareInitialView();
                        BindPRMBOQFloorDetailList();

                        if (pRMBOQFloorDetailEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Project Cost Floor Detail Information has been added successfully.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Project Cost Floor Detail Information has been updated successfully.", false);
                        }
                    }
                    else
                    {
                        if (pRMBOQFloorDetailEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to add Project Cost Floor Detail Information.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to update Project Cost Floor Detail Information.", false);
                        }
                    }
                }
                catch (Exception ex)
                {
                    MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                }
            }
        }
Example #3
0
        protected void lvPRMBOQFloorDetail_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            Int64 BOQFloorDetailID;

            Int64.TryParse(e.CommandArgument.ToString(), out BOQFloorDetailID);

            if (BOQFloorDetailID > 0)
            {
                if (string.Equals(e.CommandName, "EditItem"))
                {
                    _BOQFloorDetailID = BOQFloorDetailID;

                    PrepareEditView();

                    cpeEditor.Collapsed   = false;
                    cpeEditor.ClientState = "false";
                }
                else if (string.Equals(e.CommandName, "DeleteItem"))
                {
                    try
                    {
                        Int64 result = -1;

                        String fe = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQFloorDetailID, BOQFloorDetailID.ToString(), SQLMatchType.Equal);

                        PRMBOQFloorDetailEntity pRMBOQFloorDetailEntity = new PRMBOQFloorDetailEntity();


                        result = FCCPRMBOQFloorDetail.GetFacadeCreate().Delete(pRMBOQFloorDetailEntity, fe, DatabaseOperationType.Delete, TransactionRequired.No);

                        if (result == 0)
                        {
                            _BOQFloorDetailID        = 0;
                            _PRMBOQFloorDetailEntity = new PRMBOQFloorDetailEntity();
                            PrepareInitialView();
                            BindPRMBOQFloorDetailList();

                            MiscUtil.ShowMessage(lblMessage, "Project Cost Floor Detail has been successfully deleted.", true);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to delete Project Cost Floor Detail.", true);
                        }
                    }
                    catch (Exception ex)
                    {
                        MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                    }
                }
            }
        }
        protected void lvPRMBOQDetail_ItemDataBound(object sender, ListViewItemEventArgs e)
        {
            if (e.Item.ItemType == ListViewItemType.DataItem)
            {
                ListViewDataItem dataItem = (ListViewDataItem)e.Item;

                PRMBOQDetail_CustomEntity ent = (PRMBOQDetail_CustomEntity)dataItem.DataItem;

                String fe = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQDetailID, ent.BOQDetailID.ToString(), SQLMatchType.Equal);
                IList <PRMBOQFloorDetailEntity> lst = FCCPRMBOQFloorDetail.GetFacadeCreate().GetIL(null, null, String.Empty, fe, DatabaseOperationType.LoadWithFilterExpression);

                if (lst != null && lst.Count > 0)
                {
                    LinkButton btnAdditionalQty = (LinkButton)e.Item.FindControl("btnAdditionalQty");
                    btnAdditionalQty.Visible = false;
                }
            }
        }
        public IList <PRMBOQFloorDetailEntity> GetData()
        {
            IList <PRMBOQFloorDetailEntity> pRMBOQFloorDetailEntityList = new List <PRMBOQFloorDetailEntity>();

            try
            {
                pRMBOQFloorDetailEntityList = FCCPRMBOQFloorDetail.GetFacadeCreate().GetIL(null, null, null, null, DatabaseOperationType.Load);

                if (pRMBOQFloorDetailEntityList != null && pRMBOQFloorDetailEntityList.Count > 0)
                {
                    totalRowCount = pRMBOQFloorDetailEntityList[0].TotalRowCount;
                }
            }
            catch (Exception ex)
            {
            }

            return(pRMBOQFloorDetailEntityList ?? new List <PRMBOQFloorDetailEntity>());
        }
        protected void btnPnlSaveAdditionalQty_Click(object sender, EventArgs e)
        {
            PRMBOQDetailEntity pRMBOQDetailEntity = FCCPRMBOQDetail.GetFacadeCreate().GetByID(_CurrentBOQDetailIDPopup);

            if (pRMBOQDetailEntity != null && pRMBOQDetailEntity.BOQDetailID > 0)
            {
                Decimal additionalQty = 0;
                Decimal.TryParse(txtQty.Text.Trim().ToString(), out additionalQty);

                PRMAvailableBOQQtyForRequisitionEntity pRMAvailableBOQQtyForRequisitionEntity = new PRMAvailableBOQQtyForRequisitionEntity();

                pRMAvailableBOQQtyForRequisitionEntity.IsBOQ = true;
                pRMAvailableBOQQtyForRequisitionEntity.PreBOQOrBOQDetailID = _CurrentBOQDetailIDPopup;
                pRMAvailableBOQQtyForRequisitionEntity.ItemID              = pRMBOQDetailEntity.ItemID;
                pRMAvailableBOQQtyForRequisitionEntity.Qty                 = additionalQty;
                pRMAvailableBOQQtyForRequisitionEntity.CreateDate          = DateTime.Now;
                pRMAvailableBOQQtyForRequisitionEntity.CreatedByEmployeeID = MiscUtil.GetCurrentEmployeeByMemberID(CurrentMember);
                PRMBOQEntity pRMBOQEntity = FCCPRMBOQ.GetFacadeCreate().GetByID(pRMBOQDetailEntity.BOQID);
                pRMAvailableBOQQtyForRequisitionEntity.ProjectID = pRMBOQEntity.ProjectID;

                Int64 result = -1;
                result = FCCPRMAvailableBOQQtyForRequisition.GetFacadeCreate().Add(pRMAvailableBOQQtyForRequisitionEntity, DatabaseOperationType.Add, TransactionRequired.No);

                if (result > 0)
                {
                    String fe = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQDetailEntity.FLD_NAME_BOQDetailID, _CurrentBOQDetailIDPopup.ToString(), SQLMatchType.Equal);

                    pRMBOQDetailEntity.TotalQty = pRMBOQDetailEntity.TotalQty + additionalQty;

                    FCCPRMBOQDetail.GetFacadeCreate().Update(pRMBOQDetailEntity, fe, DatabaseOperationType.Update, TransactionRequired.No);

                    IList <ListViewDataItem> list = lvPRMBOQDetail.Items;

                    if (list != null && list.Count > 0)
                    {
                        Int32 tempDataItemIndex = 0;

                        foreach (ListViewDataItem lvdi in list)
                        {
                            DataKey currentDataKey = lvPRMBOQDetail.DataKeys[tempDataItemIndex++];
                            Int64   intBOQDetailID = (Int64)currentDataKey["BOQDetailID"];

                            if (_CurrentBOQDetailIDPopup == intBOQDetailID)
                            {
                                TextBox txtTotalQtyLV = (TextBox)lvdi.FindControl("txtTotalQtyLV");
                                txtTotalQtyLV.Text = pRMBOQDetailEntity.TotalQty.ToString();
                            }
                        }
                    }

                    BindPRMBOQDetailList();

                    #region BOQ Floor Detail

                    String fe_projectFloor = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQDetailID, _CurrentBOQDetailIDPopup.ToString(), SQLMatchType.Equal);
                    IList <PRMBOQFloorDetailEntity> lstPRMBOQFloorDetail = FCCPRMBOQFloorDetail.GetFacadeCreate().GetIL(null, null, String.Empty, fe_projectFloor, DatabaseOperationType.LoadWithFilterExpression);

                    if (lstPRMBOQFloorDetail != null && lstPRMBOQFloorDetail.Count > 0)
                    {
                        Int64   totalfloorCount = lstPRMBOQFloorDetail.Count;
                        Decimal avgQty          = pRMBOQDetailEntity.TotalQty / totalfloorCount;

                        foreach (PRMBOQFloorDetailEntity ent in lstPRMBOQFloorDetail)
                        {
                            String fe1 = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQFloorDetailID, ent.BOQFloorDetailID.ToString(), SQLMatchType.Equal);
                            ent.Qty = avgQty;
                            FCCPRMBOQFloorDetail.GetFacadeCreate().Update(ent, fe1, DatabaseOperationType.Update, TransactionRequired.No);
                        }
                    }

                    #endregion

                    this.ModalPopupExtender1.Hide();
                }
            }
        }
        protected void lvPRMBOQDetail_ItemCommand(object sender, ListViewCommandEventArgs e)
        {
            #region Modify Qty

            if (e.CommandName == "ModifyQty")
            {
                Int64 ItemID;

                Int64.TryParse(e.CommandArgument.ToString(), out ItemID);
                Label   lblBOQDetailLV = (Label)e.Item.FindControl("lblBOQDetailIDLV");
                TextBox txtRateLV      = (TextBox)e.Item.FindControl("txtRateLV");

                Int64 BOQDetailID = Int64.Parse(lblBOQDetailLV.Text);
                _CurrentBOQDetailIDPopup = BOQDetailID;

                if (ItemID > 0)
                {
                    _CurrentItemID        = ItemID;
                    this.lblItemName.Text = ((Label)e.Item.FindControl("lblItemNameLV")).Text;

                    PRMBOQDetailEntity bOQDetailEntity = FCCPRMBOQDetail.GetFacadeCreate().GetByID(BOQDetailID);

                    if (bOQDetailEntity != null && bOQDetailEntity.BOQDetailID > 0)
                    {
                        String fe3 = SqlExpressionBuilder.PrepareFilterExpression(BDProjectFloorEntity.FLD_NAME_ProjectID, this.OverviewProjectID.ToString(), SQLMatchType.Equal);
                        IList <BDProjectFloorEntity> bDProjectFloorList = FCCBDProjectFloor.GetFacadeCreate().GetIL(null, null, String.Empty, fe3, DatabaseOperationType.LoadWithFilterExpression);

                        if (bDProjectFloorList != null && bDProjectFloorList.Count > 0)
                        {
                            foreach (BDProjectFloorEntity bdProjectfloorent in bDProjectFloorList)
                            {
                                String fe4            = String.Empty;
                                String feFloorDetail1 = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_ProjectFloorID, bdProjectfloorent.ProjectFloorID.ToString(), SQLMatchType.Equal);
                                String feFloorDetail2 = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQDetailID, BOQDetailID.ToString(), SQLMatchType.Equal);
                                fe4 = SqlExpressionBuilder.PrepareFilterExpression(feFloorDetail1, SQLJoinType.AND, feFloorDetail2);

                                IList <PRMBOQFloorDetailEntity> list = FCCPRMBOQFloorDetail.GetFacadeCreate().GetIL(null, null, String.Empty, fe4, DatabaseOperationType.LoadWithFilterExpression);

                                if (list == null || list.Count <= 0)
                                {
                                    PRMBOQFloorDetailEntity ent = new PRMBOQFloorDetailEntity();
                                    ent.BOQDetailID    = Int64.Parse(BOQDetailID.ToString());
                                    ent.ProjectFloorID = Int64.Parse(bdProjectfloorent.ProjectFloorID.ToString());
                                    Decimal dividedQty;
                                    Decimal RateLV;

                                    Decimal.TryParse(txtRateLV.Text, out RateLV);
                                    Decimal.TryParse((bOQDetailEntity.TotalQty / (this.OverviewProject.NoOfBasement + this.OverviewProject.NoOfStoried)).ToString(), out dividedQty);

                                    switch (bdProjectfloorent.FloorCategoryID)
                                    {
                                    case MasterDataConstants.FloorCategory.BASEMENT:
                                        dividedQty = dividedQty / 4;     //Assumuation
                                        break;

                                    case MasterDataConstants.FloorCategory.FLOOR:
                                        dividedQty = dividedQty * 1;     //Assumuation
                                        break;

                                    case MasterDataConstants.FloorCategory.PENTHOUSE:
                                        dividedQty = dividedQty * 2;     //Assumuation
                                        break;

                                    case MasterDataConstants.FloorCategory.HEAD_ROOM:
                                        dividedQty = dividedQty * 3;     //Assumuation
                                        break;

                                    default:
                                        dividedQty = 0;
                                        break;
                                    }

                                    ent.Rate      = RateLV;
                                    ent.Qty       = dividedQty;
                                    ent.Remarks   = String.Empty;
                                    ent.EntryDate = System.DateTime.Now;
                                    FCCPRMBOQFloorDetail.GetFacadeCreate().Add(ent, DatabaseOperationType.Add, TransactionRequired.No);
                                }
                            }

                            BindPRMBOQFloorDetailList();

                            this.Panel1_ModalPopupExtender.Show();
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "No Floor Available.", true);
                        }
                    }
                }
            }

            #endregion

            #region Modify Price Info

            if (e.CommandName == "ModifyPrice")
            {
                Int64 ItemID;

                Int64.TryParse(e.CommandArgument.ToString(), out ItemID);

                if (ItemID > 0)
                {
                    MiscUtil.PopulateMDBrandByItemID(ddlBrandID, false, Int64.Parse(ItemID.ToString()));
                    this.lblItemNameModifyPriceLV.Text = ((Label)e.Item.FindControl("lblItemNameLV")).Text;

                    if (ddlBrandID != null && ddlBrandID.Items.Count > 0)
                    {
                        this.ddlBrandID.SelectedValue = ((Label)e.Item.FindControl("lblBrandID")).Text;
                    }

                    BuildSupplierByBrand();

                    if (ddlSupplierID != null && ddlSupplierID.Items.Count > 0)
                    {
                        this.ddlSupplierID.SelectedValue = ((Label)e.Item.FindControl("lblSupplierID")).Text;
                    }
                    _CurrentItemID = ItemID;

                    if (ddlOriginRegionID != null && ddlOriginRegionID.Items.Count > 0)
                    {
                        this.ddlOriginRegionID.SelectedValue = ((Label)e.Item.FindControl("lblRegionID")).Text;
                    }

                    BuildCountryDropdownByRegion();

                    if (ddlOriginCountryID != null && ddlOriginCountryID.Items.Count > 0)
                    {
                        this.ddlOriginCountryID.SelectedValue = ((Label)e.Item.FindControl("lblCountryID")).Text;
                    }

                    GetCurrentPrice();
                }

                this.Panel2_ModalPopupExtender.Show();
            }

            if (e.CommandName == "AdditionalQty")
            {
                Int64 boqDetailID;

                Int64.TryParse(e.CommandArgument.ToString(), out boqDetailID);

                if (boqDetailID > 0)
                {
                    _CurrentBOQDetailIDPopup = boqDetailID;

                    this.ModalPopupExtender1.Show();
                }
            }

            #endregion
        }
        private void UpdateBOQFloorDetail()
        {
            try
            {
                IList <ListViewDataItem> listPRMFloorDetail = lvPRMBOQFloorDetail.Items;

                if (listPRMFloorDetail != null && listPRMFloorDetail.Count > 0)
                {
                    Decimal Totalqty = 0, totalRate = 0, avgRate, avgTotalQty, count = 0;

                    foreach (ListViewDataItem lvdi in listPRMFloorDetail)
                    {
                        Int64   floorDetailID;
                        Decimal newQty, floorRate;

                        TextBox txtTotalQtyLV   = (TextBox)lvdi.FindControl("txtQtyLV");
                        TextBox txtRateLV       = (TextBox)lvdi.FindControl("txtRateLV");
                        TextBox txtRemarksLV    = (TextBox)lvdi.FindControl("txtRemarksLV");
                        Label   floorDetailIDLV = (Label)lvdi.FindControl("lblBOQFloorDetailIDLV");

                        Decimal.TryParse(txtTotalQtyLV.Text.Trim(), out newQty);
                        Decimal.TryParse(txtRateLV.Text.Trim(), out floorRate);
                        Int64.TryParse(floorDetailIDLV.Text.Trim(), out floorDetailID);

                        PRMBOQFloorDetailEntity pRMBOQFloorDetailEntity = FCCPRMBOQFloorDetail.GetFacadeCreate().GetByID(floorDetailID);
                        pRMBOQFloorDetailEntity.Qty       = newQty;
                        pRMBOQFloorDetailEntity.Rate      = floorRate;
                        pRMBOQFloorDetailEntity.Remarks   = txtRemarksLV.Text;
                        pRMBOQFloorDetailEntity.EntryDate = System.DateTime.Now;

                        String fe = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQFloorDetailEntity.FLD_NAME_BOQFloorDetailID, floorDetailID.ToString(), SQLMatchType.Equal);

                        FCCPRMBOQFloorDetail.GetFacadeCreate().Update(pRMBOQFloorDetailEntity, fe, DatabaseOperationType.Update, TransactionRequired.No);

                        Totalqty  += newQty;
                        totalRate += floorRate;
                        count++;
                    }

                    avgRate     = totalRate / count;
                    avgTotalQty = Totalqty / count;

                    #region Update Project Cost Qty

                    String             fe_BOQDetail = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQDetailEntity.FLD_NAME_BOQDetailID, _CurrentBOQDetailIDPopup.ToString(), SQLMatchType.Equal);
                    PRMBOQDetailEntity prmBOQDetailEntity = FCCPRMBOQDetail.GetFacadeCreate().GetByID(_CurrentBOQDetailIDPopup);
                    prmBOQDetailEntity.TotalQty = Totalqty;

                    FCCPRMBOQDetail.GetFacadeCreate().Update(prmBOQDetailEntity, fe_BOQDetail, DatabaseOperationType.Update, TransactionRequired.No);

                    IList <ListViewDataItem> listPRMBOQDetail = lvPRMBOQDetail.Items;

                    if (listPRMBOQDetail != null && listPRMBOQDetail.Count > 0)
                    {
                        Int32 tempDataItemIndex = 0;

                        foreach (ListViewDataItem lvdi in listPRMBOQDetail)
                        {
                            DataKey currentDataKey = lvPRMBOQDetail.DataKeys[tempDataItemIndex++];
                            Int64   intBOQDetailID = (Int64)currentDataKey["BOQDetailID"];

                            if (_CurrentBOQDetailIDPopup == intBOQDetailID)
                            {
                                TextBox txtRateLV     = (TextBox)lvdi.FindControl("txtRateLV");
                                TextBox txtTotalQtyLV = (TextBox)lvdi.FindControl("txtTotalQtyLV");
                                txtTotalQtyLV.Text = Totalqty.ToString();
                                txtRateLV.Text     = avgRate.ToString();
                                break;
                            }
                        }
                    }

                    BindList();

                    #endregion

                    MiscUtil.ShowMessage(lblMessage, "Project Cost Information has been saved successfully.", false);
                }
            }
            catch (Exception ex)
            {
                MiscUtil.ShowMessage(lblMessage, "Failed to Save Project Cost Information.", true);
            }
        }