示例#1
0
        Int64 IPRMBOQDataAccess.Delete(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Delete(pRMBOQEntity, filterExpression, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = DeleteTran(pRMBOQEntity, filterExpression, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#2
0
        Int64 IPRMBOQDataAccess.Add(PRMBOQEntity pRMBOQEntity, DatabaseOperationType option, TransactionRequired reqTran)
        {
            try
            {
                long retValues = -99;

                switch (reqTran)
                {
                case TransactionRequired.No:
                {
                    retValues = Add(pRMBOQEntity, option);
                    break;
                }

                case TransactionRequired.Yes:
                {
                    retValues = AddTran(pRMBOQEntity, option);
                    break;
                }

                default:
                {
                    retValues = -99;
                    break;
                }
                }

                return(retValues);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#3
0
        private Int64 UpdateTran(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.PRMBOQ_SET";

            Database db = DatabaseFactory.CreateDatabase();

            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option, db);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);

                db.AddInParameter(cmd, "@BOQID", DbType.Int64, pRMBOQEntity.BOQID);
                db.AddInParameter(cmd, "@PreBOQID", DbType.Int64, pRMBOQEntity.PreBOQID);
                db.AddInParameter(cmd, "@ProjectID", DbType.Int64, pRMBOQEntity.ProjectID);
                db.AddInParameter(cmd, "@StartDate", DbType.DateTime, pRMBOQEntity.StartDate);
                db.AddInParameter(cmd, "@PreparedByMemberID", DbType.Int64, pRMBOQEntity.PreparedByMemberID);
                db.AddInParameter(cmd, "@Remarks", DbType.String, pRMBOQEntity.Remarks);
                db.AddInParameter(cmd, "@BOQStatusID", DbType.Int64, pRMBOQEntity.BOQStatusID);
                db.AddInParameter(cmd, "@IsRemoved", DbType.Boolean, pRMBOQEntity.IsRemoved);

                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode > 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
示例#4
0
        private PRMBOQEntity BuildPRMBOQEntity()
        {
            PRMBOQEntity PRMBOQEntity = new PRMBOQEntity();

            PRMBOQEntity.ProjectID          = OverviewProjectID;
            PRMBOQEntity.StartDate          = System.DateTime.Now;
            PRMBOQEntity.PreparedByMemberID = 1;
            PRMBOQEntity.BOQStatusID        = 1;

            return(PRMBOQEntity);
        }
示例#5
0
        private void SavePRMBOQEntity()
        {
            if (IsValid)
            {
                try
                {
                    PRMBOQEntity pRMBOQEntity = BuildPRMBOQEntity();

                    Int64 result = -1;

                    if (pRMBOQEntity.IsNew)
                    {
                        result = FCCPRMBOQ.GetFacadeCreate().Add(pRMBOQEntity, DatabaseOperationType.Add, TransactionRequired.No);
                    }
                    else
                    {
                        String filterExpression = SqlExpressionBuilder.PrepareFilterExpression(PRMBOQEntity.FLD_NAME_BOQID, pRMBOQEntity.BOQID.ToString(), SQLMatchType.Equal);
                        result = FCCPRMBOQ.GetFacadeCreate().Update(pRMBOQEntity, filterExpression, DatabaseOperationType.Update, TransactionRequired.No);
                    }

                    if (result > 0)
                    {
                        _PRMBOQEntity = new PRMBOQEntity();
                        PrepareInitialView();
                        PrepareEditView();

                        if (pRMBOQEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Project Cost Information has been added successfully.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Project Cost Information has been updated successfully.", false);
                        }
                    }
                    else
                    {
                        if (pRMBOQEntity.IsNew)
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to add Project Cost Information.", false);
                        }
                        else
                        {
                            MiscUtil.ShowMessage(lblMessage, "Failed to update BOQ Information.", false);
                        }
                    }
                }
                catch (Exception ex)
                {
                    MiscUtil.ShowMessage(lblMessage, ex.Message, true);
                }
            }
        }
示例#6
0
        private Int64 DeleteTran(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.PRMBOQ_SET";

            Database db = DatabaseFactory.CreateDatabase();


            using (DbCommand cmd = db.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd, db);
                AddFilterExpressionParameter(cmd, filterExpression, db);


                DbConnection connection = db.CreateConnection();
                connection.Open();
                DbTransaction transaction = connection.BeginTransaction();

                try
                {
                    using (IDataReader reader = db.ExecuteReader(cmd, transaction))
                    {
                        returnCode = GetReturnCodeFromParameter(cmd);
                    }

                    if (returnCode >= 0)
                    {
                        transaction.Commit();
                    }
                    else
                    {
                        throw new ArgumentException("Error Code." + returnCode.ToString());
                    }
                }
                catch (Exception ex)
                {
                    transaction.Rollback();
                    throw ex;
                }
                finally
                {
                    transaction.Dispose();
                    connection.Close();
                    connection = null;
                }
            }

            return(returnCode);
        }
示例#7
0
        private Int64 Update(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.PRMBOQ_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);

                Database.AddInParameter(cmd, "@BOQID", DbType.Int64, pRMBOQEntity.BOQID);
                Database.AddInParameter(cmd, "@PreBOQID", DbType.Int64, pRMBOQEntity.PreBOQID);
                Database.AddInParameter(cmd, "@ProjectID", DbType.Int64, pRMBOQEntity.ProjectID);
                Database.AddInParameter(cmd, "@StartDate", DbType.DateTime, pRMBOQEntity.StartDate);
                Database.AddInParameter(cmd, "@PreparedByMemberID", DbType.Int64, pRMBOQEntity.PreparedByMemberID);
                Database.AddInParameter(cmd, "@Remarks", DbType.String, pRMBOQEntity.Remarks);
                Database.AddInParameter(cmd, "@BOQStatusID", DbType.Int64, pRMBOQEntity.BOQStatusID);
                Database.AddInParameter(cmd, "@IsRemoved", DbType.Boolean, pRMBOQEntity.IsRemoved);

                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("PRMBOQEntity already exists. Please specify another PRMBOQEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("PRMBOQEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("PRMBOQEntity already exists. Please specify another PRMBOQEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
示例#8
0
        private PRMBOQEntity BuildPRMBOQEntity()
        {
            PRMBOQEntity pRMBOQEntity = CurrentPRMBOQEntity;

            if (txtStartDate.Text.Trim().IsNotNullOrEmpty())
            {
                pRMBOQEntity.StartDate = MiscUtil.ParseToDateTime(txtStartDate.Text);
            }
            else
            {
                pRMBOQEntity.StartDate = null;
            }

            if (ddlPreparedByMemberID.Items.Count > 0)
            {
                if (ddlPreparedByMemberID.SelectedValue == "0")
                {
                }
                else
                {
                    pRMBOQEntity.PreparedByMemberID = Int64.Parse(ddlPreparedByMemberID.SelectedValue);
                }
            }

            pRMBOQEntity.Remarks = txtRemarks.Text.Trim();
            if (ddlBOQStatusID.Items.Count > 0)
            {
                if (ddlBOQStatusID.SelectedValue == "0")
                {
                    pRMBOQEntity.BOQStatusID = null;
                }
                else
                {
                    pRMBOQEntity.BOQStatusID = Int64.Parse(ddlBOQStatusID.SelectedValue);
                }
            }


            return(pRMBOQEntity);
        }
示例#9
0
        private Int64 Delete(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option)
        {
            long         returnCode = -99;
            const string SP         = "dbo.PRMBOQ_SET";

            using (DbCommand cmd = Database.GetStoredProcCommand(SP))
            {
                AddOptionParameter(cmd, option);
                AddOutputParameter(cmd);
                AddFilterExpressionParameter(cmd, filterExpression);


                using (IDataReader reader = Database.ExecuteReader(cmd))
                {
                    returnCode = GetReturnCodeFromParameter(cmd);

                    switch (returnCode)
                    {
                    case SqlConstants.DB_STATUS_CODE_DATAALREADYEXIST:
                    {
                        throw new ArgumentException("PRMBOQEntity already exists. Please specify another PRMBOQEntity.");
                    }

                    case SqlConstants.DB_STATUS_CODE_DATAUPDATEDFROMOTHERSESSION:
                    {
                        throw new ArgumentException("PRMBOQEntity data already updated from different session.");
                    }

                    case SqlConstants.DB_STATUS_CODE_FAIL_OPERATION:
                    {
                        throw new ArgumentException("PRMBOQEntity already exists. Please specify another PRMBOQEntity.");
                    }
                    }
                }
            }

            return(returnCode);
        }
示例#10
0
        private void PrepareEditView()
        {
            PRMBOQEntity pRMBOQEntity = CurrentPRMBOQEntity;


            if (!pRMBOQEntity.IsNew)
            {
                txtStartDate.Text = pRMBOQEntity.StartDate.ToStringDefault();
                if (ddlPreparedByMemberID.Items.Count > 0 && pRMBOQEntity.PreparedByMemberID != null)
                {
                    ddlPreparedByMemberID.SelectedValue = pRMBOQEntity.PreparedByMemberID.ToString();
                }

                txtRemarks.Text = pRMBOQEntity.Remarks.ToString();
                if (ddlBOQStatusID.Items.Count > 0 && pRMBOQEntity.BOQStatusID != null)
                {
                    ddlBOQStatusID.SelectedValue = pRMBOQEntity.BOQStatusID.ToString();
                }

                btnSubmit.Text = "Update";
            }

            FormLock();
        }
示例#11
0
        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();
                }
            }
        }
示例#12
0
 Int64 IPRMBOQFacade.Delete(PRMBOQEntity pRMBOQEntity, String filterExpression, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreatePRMBOQDataAccess().Delete(pRMBOQEntity, filterExpression, option, reqTran));
 }
示例#13
0
 Int64 IPRMBOQFacade.Add(PRMBOQEntity pRMBOQEntity, DatabaseOperationType option, TransactionRequired reqTran)
 {
     return(DataAccessFactory.CreatePRMBOQDataAccess().Add(pRMBOQEntity, option, reqTran));
 }