예제 #1
0
        /// <summary>
        /// 送出訂單
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button2_Click(object sender, EventArgs e)
        {
            //=========判斷帳號是否為採購人員帳號======================================
            if (this.buyerLoginAccount != null)
            {
                //==================================================

                ////暫時先自己設定帳號所需要的變數
                //DateTime RequestDate;
                //string RequesterRole;
                //string RequesterID;
                //string OrderChangedCategoryCode;

                //RequesterRole = "P";
                //RequestDate = DateTime.Now;
                //RequesterID = this.buyerLoginAccount.EmployeeID.ToString();
                //OrderChangedCategoryCode = "P";
                ////===================================================
                //// 把異動資料UPDATE至資料庫
                //string strcmdUpdate = @"UPDATE [OrderChanged]
                //                    SET OrderChangedCategoryCode = @OrderChangedCategoryCode
                //                    WHERE OrderID = @orderID

                //                    UPDATE [OrderChanged]
                //                    SET RequestDate = @RequestDate
                //                    WHERE OrderID = @orderID

                //                    UPDATE [OrderChanged]
                //                    SET RequesterRole = @RequesterRole
                //                    WHERE OrderID = @orderID

                //                    UPDATE [OrderChanged]
                //                    SET RequesterID = @RequesterID
                //                    WHERE OrderID = @orderID

                //                    UPDATE [OrderChanged]
                //                    SET OrderChangedCategoryCode = @OrderChangedCategoryCode
                //                    WHERE OrderID = @orderID";
                //List<SqlParameter> sqlParameters = new List<SqlParameter>();
                //sqlParameters.Add(SqlHelper.CreateParameter("@orderID", SqlDbType.VarChar, 14, this.orderID));
                //sqlParameters.Add(SqlHelper.CreateParameter("@RequestDate", SqlDbType.DateTime, RequestDate));
                //sqlParameters.Add(SqlHelper.CreateParameter("@RequesterRole", SqlDbType.VarChar, 1, RequesterRole));
                //sqlParameters.Add(SqlHelper.CreateParameter("@RequesterID", SqlDbType.VarChar, 10, RequesterID));
                //sqlParameters.Add(SqlHelper.CreateParameter("@OrderChangedCategoryCode", SqlDbType.VarChar, 1, OrderChangedCategoryCode));
                //SqlHelper.ExecuteNonQuery(strcmdUpdate, sqlParameters);

                //=============================new form
                SendOrderForm frm = new SendOrderForm(this.orderID);
                Common.ContainerForm.NextForm(frm);
            }
        }
예제 #2
0
        private void btnConfirm_Click(object sender, EventArgs e)
        {
            if (dtpDateRequired.Value < DateTime.Now)
            {
                MessageBox.Show("請輸入大於本日的日期");
                return;
            }

            if (MessageBox.Show("您確定要將訂單送出嗎?\n確認無誤後,系統會產生訂單編號,請填寫收貨人資訊", "訂單確認", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                //Order
                OrderDao    dao = new OrderDao();
                Model.Order o   = new Model.Order();
                o.PurchasingOrderID = PurchasingOrderID;
                o.SupplierCode      = this.SupplierCode;
                SupplierAccountDao saDao = new SupplierAccountDao();
                o.SupplierAccountID = saDao.FindSupplierAccountBySupplierCode(o.SupplierCode).SupplierAccountID;
                o.EmployeeID        = Common.ContainerForm.BuyerLoginAccount.EmployeeID;
                o.DateRequired      = this.dtpDateRequired.Value;

                //OrderChanged
                Model.OrderChanged oc = new Model.OrderChanged();
                oc.OrderChangedCategoryCode = "N";
                oc.RequestDate   = DateTime.Now;
                oc.RequesterRole = "P";
                oc.RequesterID   = o.EmployeeID;

                //OrderPartList
                List <Model.OrderPart> opList = new List <Model.OrderPart>();
                foreach (DataRow dr in this.PodData.Rows)
                {
                    Model.OrderPart op = new Model.OrderPart();
                    op.PartNumber   = dr["料件編號"].ToString();
                    op.PartName     = dr["料件品名"].ToString();
                    op.PartSpec     = dr["PartSpec"].ToString();
                    op.PartUnitName = dr["PartUnitName"].ToString();
                    op.UnitPrice    = Convert.ToInt32(dr["批量單價"]);
                    opList.Add(op);
                }

                //SourceOrderList
                List <Model.SourceOrderList> soList = new List <Model.SourceOrderList>();
                foreach (DataRow dr in this.PodData.Rows)
                {
                    Model.SourceOrderList sol = new Model.SourceOrderList();
                    sol.Batch    = Convert.ToInt32(dr["批量"]);
                    sol.Discount = Convert.ToDecimal(dr["Discount"]);
                    sol.Qty      = Convert.ToInt32(dr["採購數量"]);
                    sol.PurchasingOrderDetailListOID = Convert.ToInt32(dr["採購單明細識別碼"]);
                    soList.Add(sol);
                }

                string OrderID = dao.InsertNewOrder(o, oc, opList, soList);

                if (string.IsNullOrEmpty(OrderID))
                {
                    MessageBox.Show("訂單新增失敗");
                    return;
                }

                SendOrderForm frm = new SendOrderForm(OrderID);
                Common.ContainerForm.NextForm(frm);
            }
        }