public void ShowCurrentRegisterInvoiceNo() { HIS.MZ_BLL.OPDBillKind kind = HIS.MZ_BLL.OPDBillKind.门诊挂号发票; if (HIS.MZ_BLL.OPDParamter.Parameters["012"].ToString() == "1") { kind = HIS.MZ_BLL.OPDBillKind.门诊收费发票; } string perfChar = ""; string invoiceNo = HIS.MZ_BLL.InvoiceManager.GetBillNumber(kind, view.OperatorId, true, out perfChar); view.ShowCurrentRegisterInvoiceNo(invoiceNo); }
private void btnOk_Click(object sender, EventArgs e) { if (cboChargetor.Text.Trim() == "" || cboChargetor.SelectedValue == null) { MessageBox.Show("请指定发票领用人!", "", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } HIS.MZ_BLL.OPDBillKind invoiceType = HIS.MZ_BLL.OPDBillKind.门诊收费发票; foreach (object obj in Enum.GetValues(typeof(HIS.MZ_BLL.OPDBillKind))) { if (obj.ToString() == cboInvoiceType.Text) { invoiceType = (HIS.MZ_BLL.OPDBillKind)obj; break; } } int chargeUserId = Convert.ToInt32(cboChargetor.SelectedValue); if (chkCommonUser.Checked) { chargeUserId = 0; } try { int start = Convert.ToInt32(txtKs.Text); int end = Convert.ToInt32(txtJs.Text); string perfChar = txtPerfChar.Text.Trim( ).ToUpper(); if (end < start) { MessageBox.Show("结束号不能大于开始号", "", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } if (HIS.MZ_BLL.InvoiceManager.CheckInvoiceExists(invoiceType, start, end, perfChar)) { HIS.MZ_BLL.InvoiceManager.SetInvoiceRecord(invoiceType, chargeUserId, perfChar, start, end, Convert.ToInt32(user.EmployeeID)); this.Close(); } } catch (Exception err) { MessageBox.Show(err.Message, "", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private void btnQuery_Click(object sender, EventArgs e) { lblActCost.Text = ""; lblTotalCost.Text = ""; lblTotalNum.Text = ""; lblReturnCost.Text = ""; lblReturnNum.Text = ""; lblTotalCash.Text = ""; lblTotalFavor.Text = ""; lblTotalPOS.Text = ""; lblTotalTally.Text = ""; plInvoice.Visible = false; try { DataTable tbList = null; if (chkall.Checked) { tbList = HIS.MZ_BLL.PublicDataReader.GetChargeInvoiceList(this.dtpFrom.Value, dtpTo.Value); } else { tbList = HIS.MZ_BLL.PublicDataReader.GetChargeInvoiceList(this.dtpFrom.Value, dtpTo.Value, Convert.ToInt32(currentUser.EmployeeID)); } HIS.MZ_BLL.OPDBillKind invoiceType = HIS.MZ_BLL.OPDBillKind.所有发票; foreach (object obj in Enum.GetValues(typeof(HIS.MZ_BLL.OPDBillKind))) { if (obj.ToString( ) == cboInvoiceType.Text) { invoiceType = (HIS.MZ_BLL.OPDBillKind)obj; } } string patTypeCode = ""; if (chkPayType.Checked) { patTypeCode = cboPatType.SelectedValue.ToString(); } DataRow[] drs; DataTable tbList1 = tbList.Clone( ); if (invoiceType == HIS.MZ_BLL.OPDBillKind.门诊挂号发票) { string filter = "Hang_Flag=0"; if (patTypeCode != "") { filter = filter + " and MediType='" + patTypeCode + "'"; } drs = tbList.Select(filter); for (int i = 0; i < drs.Length; i++) { tbList1.Rows.Add(drs[i].ItemArray); } } else if (invoiceType == HIS.MZ_BLL.OPDBillKind.门诊收费发票) { string filter = "Hang_Flag=1"; if (patTypeCode != "") { filter = filter + " and MediType='" + patTypeCode + "'"; } drs = tbList.Select(filter); for (int i = 0; i < drs.Length; i++) { tbList1.Rows.Add(drs[i].ItemArray); } } else { string filter = ""; if (patTypeCode != "") { filter = filter + "MediType='" + patTypeCode + "'"; } drs = tbList.Select(filter); for (int i = 0; i < drs.Length; i++) { tbList1.Rows.Add(drs[i].ItemArray); } } if (txtStartNo.Text.Trim( ) != "") { tbList.Rows.Clear( ); string filter = ""; if (chkEndNo.Checked && txtEndNo.Text.Trim() != "") { long invoiceNum = Convert.ToInt64(txtStartNo.Text); long endNum = Convert.ToInt64(txtEndNo.Text); if ((endNum - invoiceNum) > 1000) { if (MessageBox.Show("发票起止段查询范围过大,会消耗比较长的时间或导致程序无响应,是否继续?\r\n(建议值1000张以内)", "", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No) { return; } } while (true) { if (invoiceNum > endNum) { break; } else { filter = "InvoiceNo = '" + invoiceNum.ToString( ) + "'"; drs = tbList1.Select(filter); if (drs.Length > 0) { tbList.Rows.Add(drs[0].ItemArray); } invoiceNum++; } } } else { filter = "InvoiceNo = '" + txtStartNo.Text.Trim( ) + "'"; drs = tbList1.Select(filter); for (int i = 0; i < drs.Length; i++) { tbList.Rows.Add(drs[i].ItemArray); } //if ( drs.Length > 0 ) //{ // tbList.Rows.Add( drs[0].ItemArray ); //} } tbList1 = tbList; } tbList = tbList1; dgvList.DataSource = tbList1; object objValue; lblTotalNum.Text = tbList.Rows.Count.ToString( ); objValue = tbList.Compute("Sum(COST)", ""); lblTotalCost.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("count(InvoiceNo)", "UnChargeDate is not null"); lblReturnNum.Text = Convert.ToInt32(Convert.IsDBNull(objValue)?"0":objValue).ToString( ); objValue = tbList.Compute("Sum(UnChargeCost)", "UnChargeDate is not null"); lblReturnCost.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(Cost)", "UnChargeDate is null"); lblActCost.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(Cash)", "UnChargeDate is null"); lblTotalCash.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(POS)", "UnChargeDate is null"); lblTotalPOS.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(Tally)", "UnChargeDate is null"); lblTotalTally.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(Favor)", "UnChargeDate is null"); lblTotalFavor.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); objValue = tbList.Compute("Sum(Self_Tally)", "UnChargeDate is null"); lblTotalSelfTally.Text = Convert.ToDecimal(Convert.IsDBNull(objValue) ? "0" : objValue).ToString( ); } catch { } }