public static decimal GetExchangeRate(string accountno) { dalAccBankAccount dal = new dalAccBankAccount(); modAccBankAccount mod = dal.GetItem(accountno, out Util.emsg); if (mod != null) { dalAccCurrencyList dal2 = new dalAccCurrencyList(); modAccCurrencyList mod2 = dal2.GetItem(mod.Currency, out Util.emsg); if (mod2 != null) { return(mod2.ExchangeRate); } else { return(1); } } else { return(1); } }
private void btnPost_Click(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; DBGrid.EndEdit(); if (DBGrid.RowCount == 0) { MessageBox.Show("没有明细数据", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } for (int i = 0; i < DBGrid.RowCount; i++) { if (DBGrid.Rows[i].Cells[0].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[0].Value.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Product id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } if (DBGrid.Rows[i].Cells[4].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[4].Value.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (!Util.IsNumeric(DBGrid.Rows[i].Cells[4].Value.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (Convert.ToDecimal(DBGrid.Rows[i].Cells[4].Value.ToString()) <= 0) { MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" must > 0!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } if (DBGrid.Rows[i].Cells[5].Value == null || string.IsNullOrEmpty(DBGrid.Rows[i].Cells[5].Value.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Price") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } else if (!Util.IsNumeric(DBGrid.Rows[i].Cells[5].Value.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Price") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return; } } modSalesShipment mod = new modSalesShipment(); mod.ShipId = _dal.GetNewId(DateTime.Today); mod.ShipDate = DateTime.Today; mod.ShipType = "收营单"; //mod.No = txtNo.Text.Trim(); mod.AdFlag = 1; dalCustomerList dalcust = new dalCustomerList(); //mod.CustOrderNo = txtCustOrderNo.Text.Trim(); mod.CustName = "散客"; mod.CustId = clsLxms.GetDefaultCustId(); mod.PayMethod = "现金"; mod.SalesMan = Util.UserId; mod.OtherMny = 0; mod.KillMny = 0; mod.Currency = Util.Currency; dalAccCurrencyList dalcur = new dalAccCurrencyList(); modAccCurrencyList modcur = dalcur.GetItem(mod.Currency, out Util.emsg); mod.ExchangeRate = modcur.ExchangeRate; mod.DetailSum = decimal.Parse(txtAmount.Text); mod.UpdateUser = Util.UserId; mod.Status = 0; mod.ReceiveStatus = 1; mod.AccountNo = "现金"; mod.MakeDate = DateTime.Today; mod.ReceiveDate = DateTime.Today.ToString("yyyy-MM-dd"); mod.InvoiceStatus = 0; mod.InvoiceMny = 0; string detaillist = string.Empty; dalCustomerOrderList dalorder = new dalCustomerOrderList(); BindingCollection <modSalesShipmentDetail> list = new BindingCollection <modSalesShipmentDetail>(); for (int i = 0; i < DBGrid.RowCount; i++) { modSalesShipmentDetail modd = new modSalesShipmentDetail(); modd.Seq = i + 1; modd.ProductId = DBGrid.Rows[i].Cells[0].Value.ToString(); modd.ProductName = DBGrid.Rows[i].Cells[1].Value.ToString(); modd.Specify = DBGrid.Rows[i].Cells[8].Value.ToString(); modd.UnitNo = DBGrid.Rows[i].Cells[3].Value.ToString(); modd.Size = 1; modd.Qty = Convert.ToDecimal(DBGrid.Rows[i].Cells[4].Value.ToString()); modd.Price = Convert.ToDecimal(DBGrid.Rows[i].Cells[5].Value.ToString()); modd.SalesManMny = 0; modd.WarehouseId = clsLxms.GetDefaultWarehouseId(); list.Add(modd); } bool ret = _dal.Save("ADD", mod, list, out Util.emsg); if (ret) { this.DialogResult = DialogResult.OK; LoadHistory(); DBGrid.Rows.Clear(); txtQty.Text = "0"; txtAmount.Text = "0"; btnPreview_Click(null, null); txtProduct.Focus(); } else { MessageBox.Show(Util.emsg, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception ex) { MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); return; } finally { this.Cursor = Cursors.Default; } }
private void toolSave_Click(object sender, EventArgs e) { try { this.Cursor = Cursors.WaitCursor; if (dtpFormDate.Value < Util.modperiod.StartDate) { MessageBox.Show("该日期的数据已锁定,不能更新数据!", clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); dtpFormDate.Focus(); return; } if (cboDesignType.SelectedValue == null || string.IsNullOrEmpty(cboDesignType.SelectedValue.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Form Type") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); cboDesignType.Focus(); return; } if (cboReceiveStatus.SelectedValue == null || string.IsNullOrEmpty(cboReceiveStatus.SelectedValue.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Receive Status") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); cboReceiveStatus.Focus(); return; } if (cboInvoiceStatus.SelectedValue == null || string.IsNullOrEmpty(cboInvoiceStatus.SelectedValue.ToString())) { MessageBox.Show(clsTranslate.TranslateString("Invoice Status") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); cboInvoiceStatus.Focus(); return; } if (string.IsNullOrEmpty(txtQty.Text.Trim())) { MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtQty.Focus(); return; } else if (!Util.IsNumeric(txtQty.Text)) { MessageBox.Show(clsTranslate.TranslateString("Qty") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtQty.Focus(); return; } if (string.IsNullOrEmpty(txtMny.Text.Trim())) { MessageBox.Show(clsTranslate.TranslateString("Mny") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtMny.Focus(); return; } else if (!Util.IsNumeric(txtMny.Text)) { MessageBox.Show(clsTranslate.TranslateString("Mny") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtMny.Focus(); return; } if (string.IsNullOrEmpty(txtSalesManMny.Text.Trim())) { MessageBox.Show(clsTranslate.TranslateString("Sales Man Mny") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtSalesManMny.Focus(); return; } else if (!Util.IsNumeric(txtSalesManMny.Text)) { MessageBox.Show(clsTranslate.TranslateString("Sales Man Mny") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtSalesManMny.Focus(); return; } if (string.IsNullOrEmpty(txtInvoiceMny.Text.Trim())) { MessageBox.Show(clsTranslate.TranslateString("Invoice Mny") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtInvoiceMny.Focus(); return; } else if (!Util.IsNumeric(txtInvoiceMny.Text)) { MessageBox.Show(clsTranslate.TranslateString("Invoice Mny") + clsTranslate.TranslateString(" must be a numeric!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtInvoiceMny.Focus(); return; } if (cboInvoiceStatus.SelectedIndex == 2) { if (Convert.ToDecimal(txtInvoiceMny.Text) == 0) { MessageBox.Show(clsTranslate.TranslateString("Invoice Mny") + clsTranslate.TranslateString(" must >0 !"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtInvoiceMny.Focus(); return; } if (string.IsNullOrEmpty(txtInvoiceNo.Text.Trim())) { MessageBox.Show(clsTranslate.TranslateString("Invoice No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtInvoiceNo.Focus(); return; } } if (txtCustName.Tag == null) { MessageBox.Show(clsTranslate.TranslateString("Cust Id") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtCustName.Focus(); return; } if (string.IsNullOrEmpty(txtCustName.Text)) { MessageBox.Show(clsTranslate.TranslateString("Cust Name") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtCustName.Focus(); return; } if (clsLxms.GetParameterValue("NEED_SHIP_NO").CompareTo("T") == 0 && string.IsNullOrEmpty(txtNo.Text)) { MessageBox.Show(clsTranslate.TranslateString("No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtNo.Focus(); return; } if (clsLxms.GetParameterValue("NEED_CUST_ORDER_NO").CompareTo("T") == 0 && string.IsNullOrEmpty(txtCustOrderNo.Text)) { MessageBox.Show(clsTranslate.TranslateString("Cust Order No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtCustOrderNo.Focus(); return; } if (string.IsNullOrEmpty(txtSalesMan.Text)) { MessageBox.Show(clsTranslate.TranslateString("Sales Man") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtSalesMan.Focus(); return; } if (string.IsNullOrEmpty(txtUnitNo.Text)) { MessageBox.Show(clsTranslate.TranslateString("Unit No") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtUnitNo.Focus(); return; } if (string.IsNullOrEmpty(txtProductName.Text)) { MessageBox.Show(clsTranslate.TranslateString("Product Name") + clsTranslate.TranslateString(" can not be null!"), clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Exclamation); txtProductName.Focus(); return; } if (!string.IsNullOrEmpty(txtCustOrderNo.Text.Trim())) { dalCustomerOrderList dalorder = new dalCustomerOrderList(); if (!dalorder.Exists(txtCustName.Tag.ToString(), txtCustOrderNo.Text.Trim(), out Util.emsg)) { if (MessageBox.Show("无法找到对应的客户订单号,您要继续保存吗?", clsTranslate.TranslateString("Confirm"), MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2) == DialogResult.No) { return; } } } modSalesDesignForm mod = new modSalesDesignForm(); mod.Id = Convert.ToInt32(txtId.Text); mod.FormDate = dtpFormDate.Value; mod.FormType = cboDesignType.SelectedValue.ToString(); mod.No = txtNo.Text.Trim(); mod.AdFlag = cboDesignType.SelectedValue.ToString().IndexOf("退货") > 0 ? -1 : 1; mod.CustOrderNo = txtCustOrderNo.Text.Trim(); mod.CustId = txtCustName.Tag.ToString(); mod.CustName = txtCustName.Text.Trim(); mod.PayMethod = txtPayMethod.Text.Trim(); mod.SalesMan = txtSalesMan.Text.Trim(); mod.ProductName = txtProductName.Text.Trim(); mod.Remark = txtRemark.Text.Trim(); mod.Currency = txtCurrency.Text.Trim(); dalAccCurrencyList dalcur = new dalAccCurrencyList(); modAccCurrencyList modcur = dalcur.GetItem(txtCurrency.Text.Trim(), out Util.emsg); mod.ExchangeRate = modcur.ExchangeRate; mod.UnitNo = txtUnitNo.Text.Trim(); mod.Qty = Convert.ToDecimal(txtQty.Text); mod.Mny = Convert.ToDecimal(txtMny.Text); mod.SalesManMny = Convert.ToDecimal(txtSalesManMny.Text); mod.UpdateUser = Util.UserId; mod.Status = 0; mod.ReceiveStatus = cboReceiveStatus.SelectedIndex; mod.AccountNo = cboAccountNo.SelectedValue == null ? string.Empty : cboAccountNo.SelectedValue.ToString(); mod.ReceiveDate = txtReceiveDate.Text.Trim(); mod.InvoiceStatus = cboInvoiceStatus.SelectedIndex; mod.InvoiceMny = Convert.ToDecimal(txtInvoiceMny.Text); mod.InvoiceNo = txtInvoiceNo.Text.Trim(); string detaillist = string.Empty; bool ret = false; if (_action == "NEW" || _action == "ADD") { ret = _dal.Insert(mod, out Util.emsg); } else { ret = _dal.Update(mod.Id, mod, out Util.emsg); } if (ret) { this.DialogResult = DialogResult.OK; this.Dispose(); } else { MessageBox.Show(Util.emsg, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); } } catch (Exception ex) { MessageBox.Show(ex.Message, clsTranslate.TranslateString("Information"), MessageBoxButtons.OK, MessageBoxIcon.Information); return; } finally { this.Cursor = Cursors.Default; } }