Пример #1
0
        public List <INF_BIDDINGATTACHMENT> ListInfBiddingAttachment(string BiddingNo)
        {
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            List <INF_BIDDINGATTACHMENT> lRetData = new List <INF_BIDDINGATTACHMENT>();

            try
            {
                string strQuery = "SELECT * FROM tb_inf_BiddingAttachment WHERE BiddingsNo = @BiddingsNo";

                SqlCommand command = new SqlCommand(strQuery, _conn);
                command.Parameters.AddWithValue("@BiddingsNo", BiddingNo);

                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        INF_BIDDINGATTACHMENT retData = new INF_BIDDINGATTACHMENT();

                        if (!DBNull.Value.Equals(reader["BiddingsNo"]))
                        {
                            retData.BiddingsNo = (Int64)reader["BiddingsNo"];
                        }
                        if (!DBNull.Value.Equals(reader["FileName"]))
                        {
                            retData.FileName = (string)reader["FileName"];
                        }
                        if (!DBNull.Value.Equals(reader["Description"]))
                        {
                            retData.Description = (string)reader["Description"];
                        }
                        if (!DBNull.Value.Equals(reader["AttachFilePath"]))
                        {
                            retData.AttachFilePath = (string)reader["AttachFilePath"];
                        }

                        lRetData.Add(retData);
                    }
                }
            }
            catch (SqlException sqlEx)
            {
                logger.Error(sqlEx);
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }

            return(lRetData);
        }
        //private void DownloadAttachFile(string pathFile)
        //{
        //    string _fileName = Path.GetFileName(pathFile);

        //    WebClient req = new WebClient();
        //    HttpResponse response = HttpContext.Current.Response;
        //    string filePath = pathFile;
        //    response.Clear();
        //    response.ClearContent();
        //    response.ClearHeaders();
        //    response.Buffer = true;

        //    response.AddHeader("Content-Disposition", "attachment;filename=" + _fileName);
        //    byte[] data = req.DownloadData(Server.MapPath(filePath));
        //    response.BinaryWrite(data);
        //    response.End();
        //}

        //protected void lbtnAttachFile_Click(object sender, EventArgs e)
        //{
        //    if (ViewState["PathFile"] != null)
        //    {
        //        string _pathfile = (string)ViewState["PathFile"];
        //        DownloadAttachFile(_pathfile);
        //    }
        //}
        #endregion

        protected void btnAccept_Click(object sender, EventArgs e)
        {
            string _phoneNo = ConfigurationManager.GetConfiguration().GulfPhoneNo;

            try
            {
                /************** Insert data to database ***************/
                /****************** Bidding Detail ********************/
                INF_BIDDINGS bData = new INF_BIDDINGS();
                bData.CompanyNo    = Int64.Parse(hdfCompanyNo.Value);
                bData.ProjectNo    = Int64.Parse(hdfProjectNo.Value);
                bData.BiddingPrice = decimal.Parse(string.IsNullOrWhiteSpace(lblSummaryPrice.Text) ? "0" : lblSummaryPrice.Text);
                //bData.BiddingVat7 = decimal.Parse(string.IsNullOrWhiteSpace(lblEstimatedTax.Text) ? "0" : lblEstimatedTax.Text);
                //bData.BiddingTotalPrice = decimal.Parse(string.IsNullOrWhiteSpace(lblTotal.Text) ? "0" : lblTotal.Text);

                bData.CreatedBy   = hdfUserName.Value.Trim();
                bData.CreatedDate = DateTime.Now;
                bData.UpdatedBy   = hdfUserName.Value.Trim();
                bData.UpdatedDate = DateTime.Now;

                /****************************************************************/
                DataTable dtGVSource = (DataTable)gvItem.DataSource;
                /************************ List Bidding Item Detail **************/

                List <INF_BIDDINGDETAILS> lBidDet = new List <INF_BIDDINGDETAILS>();
                int       iRowNo       = 0;
                DataTable dtDataSource = new DataTable();
                dtDataSource = dtGVSource;
                //(DataTable)ViewState["TemplateColName"];
                if (dtDataSource != null && dtDataSource.Rows.Count > 0)
                {
                    foreach (GridViewRow row in gvItem.Rows)
                    {
                        INF_BIDDINGDETAILS bdItem = new INF_BIDDINGDETAILS();

                        bdItem.CreatedBy   = hdfUserName.Value.Trim();
                        bdItem.CreatedDate = DateTime.Now;
                        bdItem.UpdatedBy   = hdfUserName.Value.Trim();
                        bdItem.UpdatedDate = DateTime.Now;

                        int totalDTCol = (dtDataSource.Columns.Count - 2);
                        int iTxtDTCol  = totalDTCol - 1;

                        Label   lblItemColUnit2 = (Label)row.FindControl("lblItemColUnit2");
                        Label   lblItemColUnit3 = (Label)row.FindControl("lblItemColUnit3");
                        Label   lblItemColUnit4 = (Label)row.FindControl("lblItemColUnit4");
                        Label   lblItemColUnit5 = (Label)row.FindControl("lblItemColUnit5");
                        Label   lblItemColUnit6 = (Label)row.FindControl("lblItemColUnit6");
                        Label   lblItemColUnit7 = (Label)row.FindControl("lblItemColUnit7");
                        Label   lblItemColUnit8 = (Label)row.FindControl("lblItemColUnit8");
                        TextBox txtItemColumn   = (TextBox)row.FindControl("txtItemColumn");

                        if (dtDataSource.Columns.Contains("ItemColumn1"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn1"].ToString()))
                            {
                                bdItem.ItemColumn1 = dtDataSource.Rows[iRowNo]["ItemColumn1"].ToString();
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn2"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn2"].ToString()))
                            {
                                bdItem.ItemColumn2 = dtDataSource.Rows[iRowNo]["ItemColumn2"].ToString();
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn3"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn3"].ToString()))
                            {
                                bdItem.ItemColumn3 = dtDataSource.Rows[iRowNo]["ItemColumn3"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("3"))
                                {
                                    bdItem.ItemColumn3 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("3"))
                                {
                                    bdItem.ItemColumn3 = lblItemColUnit2.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn3 = lblItemColUnit2.Text;
                                }
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn4"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn4"].ToString()))
                            {
                                bdItem.ItemColumn4 = dtDataSource.Rows[iRowNo]["ItemColumn4"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("4"))
                                {
                                    bdItem.ItemColumn4 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("4"))
                                {
                                    bdItem.ItemColumn4 = lblItemColUnit3.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn4 = lblItemColUnit3.Text;
                                }
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn5"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn5"].ToString()))
                            {
                                bdItem.ItemColumn5 = dtDataSource.Rows[iRowNo]["ItemColumn5"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("5"))
                                {
                                    bdItem.ItemColumn5 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("5"))
                                {
                                    bdItem.ItemColumn5 = lblItemColUnit4.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn5 = lblItemColUnit4.Text;
                                }
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn6"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn6"].ToString()))
                            {
                                bdItem.ItemColumn6 = dtDataSource.Rows[iRowNo]["ItemColumn6"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("6"))
                                {
                                    bdItem.ItemColumn6 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("6"))
                                {
                                    bdItem.ItemColumn6 = lblItemColUnit5.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn6 = lblItemColUnit5.Text;
                                }
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn7"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn7"].ToString()))
                            {
                                bdItem.ItemColumn7 = dtDataSource.Rows[iRowNo]["ItemColumn7"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("7"))
                                {
                                    bdItem.ItemColumn7 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("7"))
                                {
                                    bdItem.ItemColumn7 = lblItemColUnit6.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn7 = lblItemColUnit6.Text;
                                }
                            }
                        }

                        if (dtDataSource.Columns.Contains("ItemColumn8"))
                        {
                            if (!string.IsNullOrWhiteSpace(dtDataSource.Rows[iRowNo]["ItemColumn8"].ToString()))
                            {
                                bdItem.ItemColumn8 = dtDataSource.Rows[iRowNo]["ItemColumn8"].ToString();
                            }
                            else
                            {
                                if (iTxtDTCol.ToString().Equals("8"))
                                {
                                    bdItem.ItemColumn8 = txtItemColumn.Text.Trim();
                                }
                                else if (totalDTCol.ToString().Equals("8"))
                                {
                                    bdItem.ItemColumn8 = lblItemColUnit7.Text;
                                }
                                else
                                {
                                    bdItem.ItemColumn8 = lblItemColUnit7.Text;
                                }
                            }
                        }

                        lBidDet.Add(bdItem);

                        iRowNo += 1;
                    }
                }

                /**********************************************************************/

                /**************************** List Attach File *************************/
                List <INF_BIDDINGATTACHMENT> lAttach = new List <INF_BIDDINGATTACHMENT>();
                DataTable dtAttachFile = (DataTable)ViewState["tbAttachFile"];
                if (dtAttachFile != null && dtAttachFile.Rows.Count > 0)
                {
                    for (int i = 0; i < dtAttachFile.Rows.Count; i++)
                    {
                        INF_BIDDINGATTACHMENT dataAttach = new INF_BIDDINGATTACHMENT();
                        //dataAttach.BiddingsNo = "";
                        dataAttach.AttachFilePath = dtAttachFile.Rows[i]["AttachFilePath"].ToString();
                        dataAttach.Description    = dtAttachFile.Rows[i]["Description"].ToString();
                        dataAttach.FileName       = dtAttachFile.Rows[i]["FileName"].ToString();

                        dataAttach.CreatedBy   = hdfUserName.Value.Trim();
                        dataAttach.CreatedDate = DateTime.Now;
                        dataAttach.UpdatedBy   = hdfUserName.Value.Trim();
                        dataAttach.UpdatedDate = DateTime.Now;

                        lAttach.Add(dataAttach);
                    }
                }
                /***********************************************************************/

                /*******************************************************/
                Inf_Biddings_Manage manage = new Inf_Biddings_Manage();
                string result = manage.InsSubmitBiddings(bData, lBidDet, lAttach);
                if (!string.IsNullOrWhiteSpace(result))
                {
                    //ScriptManager.RegisterStartupScript(this, this.GetType(), "alert",
                    //    "alert('ระบบได้รับการเสนอราคาเรียบร้อยแล้ว!');window.location ='BidingProjectList.aspx';", true);

                    this.lbtnPopup_ModalPopupExtender.Show();

                    //Response.Redirect("~/Form/BidingProjectList.aspx", true);
                }
                else
                {
                    logger.Info("Can not insert:" + result);

                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(),
                                                            "alertMessage", "alert('ไม่สามารถบันทึกข้อมูลได้')", true);
                }
                /*****************************************************/
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);

                ScriptManager.RegisterClientScriptBlock(this, this.GetType(),
                                                        "alertMessage", "alert('ไม่สามารถบันทึกข้อมูลได้! กรุณาติดต่อผู้ดูแลระบบที่เบอร์" + _phoneNo + " ')", true);
            }
        }
        public string InsSubmitBiddings(INF_BIDDINGS data, List <INF_BIDDINGDETAILS> lItemDetail,
                                        List <INF_BIDDINGATTACHMENT> lItemAttach)
        {
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");

            IDbConnection  conn = null;
            IDbTransaction tran = null;

            string ret = string.Empty;

            try
            {
                //SET CONNECTION
                conn = ConnectionFactory.GetConnection();
                conn.ConnectionString = ConfigurationManager.GetConfiguration().DbConnectionString;

                //OPEN CONNECTION
                conn.Open();
                tran = conn.BeginTransaction(IsolationLevel.Serializable);

                Inf_BiddingsBL bl = new Inf_BiddingsBL(conn, tran);

                string _biddingNo = string.Empty;
                _biddingNo = bl.InsertBiddings(data);

                if (!string.IsNullOrWhiteSpace(_biddingNo))
                {
                    ret = _biddingNo;
                    bool insResut = false;
                    foreach (INF_BIDDINGDETAILS item in lItemDetail)
                    {
                        INF_BIDDINGDETAILS insItem = new INF_BIDDINGDETAILS();
                        insItem.BiddingsNo  = Int64.Parse(_biddingNo);
                        insItem.ItemColumn1 = item.ItemColumn1;
                        insItem.ItemColumn2 = item.ItemColumn2;
                        insItem.ItemColumn3 = item.ItemColumn3;
                        insItem.ItemColumn4 = item.ItemColumn4;
                        insItem.ItemColumn5 = item.ItemColumn5;
                        insItem.ItemColumn6 = item.ItemColumn6;
                        insItem.ItemColumn7 = item.ItemColumn7;
                        insItem.ItemColumn8 = item.ItemColumn8;
                        insItem.CreatedBy   = data.CreatedBy;
                        insItem.CreatedDate = DateTime.Now;
                        insItem.UpdatedBy   = data.UpdatedBy;
                        insItem.UpdatedDate = DateTime.Now;

                        insResut = bl.InsertBiddingDetails(insItem);
                    }

                    if (insResut)
                    {
                        if (lItemAttach != null && lItemAttach.Count > 0)
                        {
                            foreach (INF_BIDDINGATTACHMENT itemAttach in lItemAttach)
                            {
                                INF_BIDDINGATTACHMENT insItem = new INF_BIDDINGATTACHMENT();
                                insItem.BiddingsNo     = Int64.Parse(_biddingNo);
                                insItem.AttachFilePath = itemAttach.AttachFilePath;
                                insItem.Description    = itemAttach.Description;
                                insItem.FileName       = itemAttach.FileName;

                                insItem.CreatedBy   = data.CreatedBy;
                                insItem.CreatedDate = DateTime.Now;
                                insItem.UpdatedBy   = data.UpdatedBy;
                                insItem.UpdatedDate = DateTime.Now;

                                insResut = bl.InsertBiddingAttachment(insItem);
                            }
                        }
                    }
                }

                tran.Commit();
            }
            catch (Exception ex)
            {
                tran.Rollback();

                ret = string.Empty;

                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
            }
            finally
            {
                if (tran != null)
                {
                    tran.Dispose();
                }

                if (conn != null)
                {
                    if (conn.State == ConnectionState.Open)
                    {
                        conn.Close();
                    }
                    conn.Dispose();
                }
            }

            return(ret);
        }
Пример #4
0
        public bool UpdateBiddingAttachment(INF_BIDDINGATTACHMENT data)
        {
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-US");
            bool bRet = false;

            try
            {
                string strQuery = "UPDATE [dbo].[tb_inf_BiddingAttachment] " +
                                  "SET [BiddingsNo] = @BiddingsNo " +
                                  ",[FileName] = @FileName " +
                                  ",[AttachFilePath] = @AttachFilePath " +
                                  ",[Description] = @Description " +
                                  ",[UpdatedBy] = @UpdatedBy " +
                                  ",[UpdatedDate] = @UpdatedDate " +
                                  "WHERE [AttachmentNo] = @AttachmentNo";

                SqlCommand command = new SqlCommand(strQuery, _conn);
                command.Transaction = _tran;

                if (data.BiddingsNo != null)
                {
                    command.Parameters.AddWithValue("@BiddingsNo", Convert.ToInt64(data.BiddingsNo));
                }
                else
                {
                    command.Parameters.AddWithValue("@BiddingsNo", DBNull.Value);
                }

                command.Parameters.AddWithValue("@FileName", string.IsNullOrWhiteSpace(data.FileName) ? "" : data.FileName);
                command.Parameters.AddWithValue("@AttachFilePath", string.IsNullOrWhiteSpace(data.AttachFilePath) ? "" : data.AttachFilePath);
                command.Parameters.AddWithValue("@Description", string.IsNullOrWhiteSpace(data.Description) ? "" : data.Description);

                command.Parameters.AddWithValue("@UpdatedBy", string.IsNullOrWhiteSpace(data.UpdatedBy) ? "" : data.UpdatedBy);
                if (!string.IsNullOrEmpty(data.UpdatedDate.ToString()))
                {
                    DateTime dtNew      = (DateTime)data.UpdatedDate;
                    string   dateString = dtNew.ToString("MM/dd/yyyy HH:mm:ss");
                    command.Parameters.AddWithValue("@UpdatedDate", dateString);
                }
                else
                {
                    command.Parameters.AddWithValue("@UpdatedDate", DateTime.Now);
                }

                command.Parameters.AddWithValue("@AttachmentNo", data.AttachmentNo);

                if (command.ExecuteNonQuery() == 1)
                {
                    bRet = true;
                }
            }
            catch (SqlException sqlEx)
            {
                logger.Error(sqlEx);
                throw sqlEx;
            }
            catch (Exception ex)
            {
                logger.Error(ex.Message);
                logger.Error(ex.StackTrace);
                throw ex;
            }

            return(bRet);
        }