/// <summary> /// 保存日结信息 /// </summary> /// <returns></returns> protected override int OnSave(object sender, object neuObject) { if (this.OperMode != "1") { return(-1); } Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); dayReport = this.GetDayReportValue(); if (dayReport.BalanceCost == 0 && dayReport.PrepayCost == 0) { Neusoft.FrameWork.WinForms.Classes.Function.Msg("时间范围内没有发生费用!", 111); return(-1); } if (this.feeDayreport.InsertDayReport(dayReport) < 1) { Neusoft.FrameWork.WinForms.Classes.Function.Msg("保存日结出错!" + this.feeDayreport.Err, 211); return(-1); } else { MessageBox.Show("保存成功!"); this.OperMode = "2"; } return(1); }
/// <summary> /// 双击 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void fpQuery_CellDoubleClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e) { Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); if (fpQuery_Sheet1.RowCount == 0) { return; } dayReport = (Neusoft.HISFC.Models.Fee.DayReport) this.fpQuery_Sheet1.Rows[fpQuery_Sheet1.ActiveRowIndex].Tag; try { this.OnEndChoose(dayReport); } catch { } this.FindForm().Close(); }
/// <summary> /// 初始化函数 /// </summary> protected virtual void Init() { //初始化时间和操作员 this.lblOperator.Text = this.feeDayreport.Operator.Name; this.DtEnd = this.feeDayreport.GetDateTimeFromSysDateTime(); this.lblStatDate.Text = this.feeDayreport.GetDateTimeFromSysDateTime().ToString(); //获取上次日结信息实体 Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); dayReport = this.feeDayreport.GetOperLastDayReport(this.feeDayreport.Operator.ID); if (dayReport == null) { dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); dayReport.EndDate = this.DefaultBeginDate; } this.DtBegin = dayReport.EndDate; }
/// <summary> /// 查找当前操作员已结算列表 /// </summary> protected virtual void GetReportDet() { ArrayList alFeeDayReport = new ArrayList(); alFeeDayReport = this.FeeInaptientDayReport.GetDayReportInfosForOper(this.FeeInaptientDayReport.Operator.ID, BeginDate, EndDate); Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); if (alFeeDayReport == null) { return; } for (int i = 0; i < alFeeDayReport.Count; i++) { dayReport = (Neusoft.HISFC.Models.Fee.DayReport)alFeeDayReport[i]; this.fpQuery_Sheet1.Cells[i, 0].Value = dayReport.StatNO; this.fpQuery_Sheet1.Cells[i, 1].Value = dayReport.BeginDate; this.fpQuery_Sheet1.Cells[i, 2].Value = dayReport.EndDate; this.fpQuery_Sheet1.Cells[i, 3].Value = dayReport.Oper.OperTime; this.fpQuery_Sheet1.Rows[i].Tag = dayReport; } }
/// <summary> /// 克隆 /// </summary> /// <returns></returns> public new DayReport Clone() { Neusoft.HISFC.Models.Fee.DayReport dayReport = base.Clone() as DayReport; dayReport.Oper = this.Oper.Clone(); return(dayReport); }
void ucQuery_OnEndChoose(Neusoft.HISFC.Models.Fee.DayReport dayReport) { this.SetDayReportValue(dayReport); this.OperMode = "2"; }
/// <summary> /// 执行日结过程 /// </summary> /// <param name="dtBegin">起始时间</param> /// <param name="dtEnd">结束时间</param> /// <returns>1成功 -1失败</returns> protected virtual int ExecDayReport() { try { //统计时间 this.lblStatDate.Text = this.feeDayreport.GetDateTimeFromSysDateTime().ToString(); Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); //日结收取预交金金额 this.lblLPrepayCost.Text = this.feeDayreport.GetPrepayCostByOperIDAndTime(this.DtBegin, this.dtEnd, this.feeDayreport.Operator.ID); //日结结算预交金金额 this.lblDPrepayCost.Text = this.feeDayreport.GetBalancedPrepayCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID); //日结结算总金额 this.lblLBalanceCost.Text = this.feeDayreport.GetBalancedCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID); //借方支票 decimal prepayCheckCost = 0m; prepayCheckCost = decimal.Parse(this.feeDayreport.GetPrepayCheckCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID)); decimal supplyCheckCost = 0m; supplyCheckCost = decimal.Parse(this.feeDayreport.GetSupplyCheckCostByOperIDAndTime(this.DtEnd, this.DtEnd, this.feeDayreport.Operator.ID)); this.lblDCheckCost.Text = (prepayCheckCost + supplyCheckCost).ToString(); //贷方支票 this.lblLCheckCost.Text = this.feeDayreport.GetReturnCheckCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID); //借方现金 decimal prepayCashCost = 0m; prepayCashCost = decimal.Parse(feeDayreport.GetPrepayCashCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID)); decimal supplyCashCost = 0m; supplyCashCost = decimal.Parse(feeDayreport.GetSupplyCashCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID)); decimal returnCashCost = 0m; returnCashCost = decimal.Parse(feeDayreport.GetReturnCashCostByOperIDAndTime(this.DtBegin, this.DtEnd, this.feeDayreport.Operator.ID)); this.lblDCashCost.Text = (prepayCashCost - returnCashCost + supplyCashCost).ToString(); //借方银行 decimal prepayBankCost = 0m; prepayBankCost = decimal.Parse(feeDayreport.GetPrepayBankCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID)); decimal supplyBankCost = 0m; supplyBankCost = decimal.Parse(feeDayreport.GetSupplyBankCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID)); this.lblDBankCost.Text = (prepayBankCost + supplyBankCost).ToString(); //贷方银行 this.lblLBankCost.Text = this.feeDayreport.GetReturnBankCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); //公费记帐金额 this.lblDBursaryCost.Text = this.feeDayreport.GetBursaryCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); this.lblLBlank1.Text = "0"; //市医保帐户支付 this.lblDCityAccountCost.Text = this.feeDayreport.GetCPayCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); this.lblLBlank2.Text = "0"; //市医保统筹支付 this.lblDCityPubCost.Text = this.feeDayreport.GetCPubCostByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); this.lblLBlank3.Text = "0"; //省医保帐户 this.lblDProvinceAccountCost.Text = "0"; this.lblLBlank4.Text = "0"; //省医保统筹支付 this.lblDProvincePubCost.Text = "0"; this.lblLBlank5.Text = "0"; //借方合计 this.lblDTotCost.Text = Neusoft.FrameWork.Public.String.ExpressionVal(this.lblDPrepayCost.Text + "+" + this.lblDCashCost.Text + "+" + lblDCheckCost.Text + "+" + lblDBankCost.Text + "+" + lblDBursaryCost.Text + "+" + lblDCityAccountCost.Text + "+" + lblDCityPubCost.Text + "+" + lblDProvinceAccountCost.Text + "+" + lblDProvincePubCost.Text).ToString(); //贷方合计 this.lblLTotCost.Text = Neusoft.FrameWork.Public.String.ExpressionVal(this.lblLPrepayCost.Text + "+" + this.lblLCheckCost.Text + this.lblLBalanceCost.Text + "+" + this.lblLBankCost.Text).ToString(); //预交金有效张数 this.lblPrepayNum.Text = this.feeDayreport.GetValidPrepayInvoiceQtyByOperIDAndTime(DtBegin, dtEnd, feeDayreport.Operator.ID); //预交金作废张数 this.lblWastePrepayNum.Text = this.feeDayreport.GetWastePrepayInvoiceQtyByOperIDAndTime(DtBegin, dtEnd, feeDayreport.Operator.ID); //预交金票据区间 Neusoft.FrameWork.Models.NeuObject invoiceZone = new Neusoft.FrameWork.Models.NeuObject(); invoiceZone = this.feeDayreport.GetPrepayInvoiceZoneByOperIDAndTime(DtBegin, dtEnd, feeDayreport.Operator.ID); if (invoiceZone != null) { this.lblPreInvZone.Text = invoiceZone.ID.ToString() + "----" + invoiceZone.Name; } //预交金作废票号 ArrayList alWasteNO = new ArrayList(); alWasteNO = this.feeDayreport.QueryWastePrepayInvNOByOperIDAndTime(DtBegin, dtEnd, feeDayreport.Operator.ID); string wasteInvNO = ""; Neusoft.HISFC.Models.Fee.Inpatient.Prepay prepay = new Neusoft.HISFC.Models.Fee.Inpatient.Prepay(); if (alWasteNO.Count == 0) { this.lblWastePrepayNO.Text = ""; } else { for (int i = 0; i < alWasteNO.Count; i++) { prepay = (Neusoft.HISFC.Models.Fee.Inpatient.Prepay)alWasteNO[i]; wasteInvNO = wasteInvNO + prepay.RecipeNO + ","; } this.lblWastePrepayNO.Text = wasteInvNO.Substring(0, wasteInvNO.Length - 1); } //结算有效张数 this.lblBalanceNum.Text = this.feeDayreport.GetValidBalanceInvoiceQtyByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); //结算作废张数 this.lblWasteBalanceNum.Text = this.feeDayreport.GetWasteBalanceInvoiceQtyByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); //结算票据区间 Neusoft.FrameWork.Models.NeuObject balanceInvoiceZone = new Neusoft.FrameWork.Models.NeuObject(); balanceInvoiceZone = this.feeDayreport.GetBalanceInvoiceZoneByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); if (balanceInvoiceZone != null) { this.lblBalanceInvZone.Text = balanceInvoiceZone.ID.ToString() + "----" + balanceInvoiceZone.Name; } //结算作废票号 ArrayList alWasteBalanceInvNO = new ArrayList(); alWasteBalanceInvNO = this.feeDayreport.QueryWasteBalanceInvNOByOperIDAndTime(DtBegin, DtEnd, feeDayreport.Operator.ID); string balanceWasteNO = ""; Neusoft.HISFC.Models.Fee.Inpatient.Balance balance = new Neusoft.HISFC.Models.Fee.Inpatient.Balance(); if (alWasteBalanceInvNO.Count == 0) { lblWasteBalanceNO.Text = ""; } else { for (int j = 0; j < alWasteBalanceInvNO.Count; j++) { balance = (Neusoft.HISFC.Models.Fee.Inpatient.Balance)alWasteBalanceInvNO[j]; balanceWasteNO = balanceWasteNO + balance.Invoice.ID + ","; } this.lblWasteBalanceNO.Text = balanceWasteNO.Substring(0, balanceWasteNO.Length - 1); } //上缴金额 this.lblLCashCost.Text = "0"; this.lblDBlank1.Text = "0"; } catch (Exception ex) { MessageBox.Show("获取日结信息出错!" + this.feeDayreport.Err); return(-1); } this.OperMode = "1"; return(1); }
/// <summary> /// 从控件取日结信息 /// </summary> /// <returns>日结实体</returns> protected virtual Neusoft.HISFC.Models.Fee.DayReport GetDayReportValue() { Neusoft.HISFC.Models.Fee.DayReport dayReport = new Neusoft.HISFC.Models.Fee.DayReport(); //统计序号 dayReport.StatNO = this.feeDayreport.GetNewDayReportID(); //开始时间 dayReport.BeginDate = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.lblBeginDate.Text); //结束日期 dayReport.EndDate = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.lblEndDate.Text); //操作员代码 dayReport.Oper.ID = this.feeDayreport.Operator.ID; //统计时间 dayReport.Oper.OperTime = Neusoft.FrameWork.Function.NConvert.ToDateTime(this.lblStatDate.Text); //收取预交金金额 dayReport.PrepayCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblLPrepayCost.Text); //借方支票金额 dayReport.DebitCheckCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDCheckCost.Text); //借方银行卡金额 dayReport.DebitBankCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDBankCost.Text); //结算预交金金额 dayReport.BalancePrepayCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDPrepayCost.Text); //贷方支票金额 dayReport.LenderCheckCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblLCheckCost.Text); //贷方银行卡金额 dayReport.LenderBankCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblLBankCost.Text); //公费记帐金额 dayReport.BursaryPubCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDBursaryCost.Text); //市医保帐户支付金额 dayReport.CityMedicarePayCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDCityAccountCost.Text); //市医保统筹金额 dayReport.CityMedicarePubCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDCityPubCost.Text); //省医保帐户支付金额 dayReport.ProvinceMedicarePayCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDProvinceAccountCost.Text); //省医保统筹金额 dayReport.ProvinceMedicarePubCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDProvinceAccountCost.Text); //库存金额(上缴金额) dayReport.TurnInCash = Neusoft.FrameWork.Function.NConvert.ToDecimal(this.lblDCashCost.Text); //预交金发票张数 dayReport.PrepayInvCount = Neusoft.FrameWork.Function.NConvert.ToInt32(this.lblPrepayNum.Text); //结算发票张数 dayReport.BalanceInvCount = Neusoft.FrameWork.Function.NConvert.ToInt32(this.lblBalanceNum.Text); //作废预交金发票号码 dayReport.PrepayWasteInvNO = this.lblWastePrepayNO.Text; //作废结算发票号码 dayReport.BalanceWasteInvNO = this.lblWasteBalanceNO.Text; //作废预交金发票张数 dayReport.PrepayWasteInvCount = Neusoft.FrameWork.Function.NConvert.ToInt32(lblWastePrepayNum.Text); //作废结算发票张数 dayReport.BalanceWasteInvCount = Neusoft.FrameWork.Function.NConvert.ToInt32(this.lblWasteBalanceNum.Text); //预交金发票区间 dayReport.PrepayInvZone = this.lblPreInvZone.Text; //结算发票区间 dayReport.BalanceInvZone = this.lblBalanceInvZone.Text; //收费员科室 dayReport.Oper.Dept.ID = ((Neusoft.HISFC.Models.Base.Employee) this.feeDayreport.Operator).Dept.ID; //结算总金额 dayReport.BalanceCost = Neusoft.FrameWork.Function.NConvert.ToDecimal(lblLBalanceCost.Text); this.lblLCashCost.Text = "0"; return(dayReport); }
/// <summary> /// 利用实体赋值控件 /// </summary> protected virtual void SetDayReportValue(Neusoft.HISFC.Models.Fee.DayReport dayReport) { //开始时间 this.lblBeginDate.Text = dayReport.BeginDate.ToString(); //结束日期 this.lblEndDate.Text = dayReport.EndDate.ToString(); //操作员代码 this.lblOperator.Text = this.feeDayreport.Operator.Name; //统计时间 this.lblStatDate.Text = dayReport.Oper.OperTime.ToString(); //收取预交金金额 this.lblLPrepayCost.Text = dayReport.PrepayCost.ToString(); //医疗结算医药费 this.lblLBalanceCost.Text = dayReport.BalanceCost.ToString(); //贷方支票金额 this.lblLCheckCost.Text = dayReport.LenderCheckCost.ToString(); //借方支票金额 this.lblDCheckCost.Text = dayReport.DebitCheckCost.ToString(); //借方银行卡金额 this.lblDBankCost.Text = dayReport.DebitBankCost.ToString(); //贷方银行卡金额 this.lblLBankCost.Text = dayReport.LenderBankCost.ToString(); //公费记帐金额 this.lblDBursaryCost.Text = dayReport.BursaryPubCost.ToString(); this.lblLBlank1.Text = "0"; //市医保帐户支付金额 this.lblLBlank2.Text = "0"; this.lblDCityAccountCost.Text = dayReport.CityMedicarePayCost.ToString(); //市医保统筹金额 this.lblLBlank3.Text = "0"; this.lblDCityPubCost.Text = dayReport.CityMedicarePubCost.ToString(); //省医保帐户支付金额 this.lblLBlank4.Text = "0"; this.lblDProvinceAccountCost.Text = dayReport.ProvinceMedicarePayCost.ToString(); //省医保统筹金额 this.lblLBlank5.Text = "0"; this.lblDProvincePubCost.Text = dayReport.ProvinceMedicarePubCost.ToString(); //库存金额(上缴金额) //this.lblLCashCost.Text = dayReport.TurnInCash.ToString(); //预交金发票张数 this.lblPrepayNum.Text = dayReport.PrepayInvCount.ToString(); //结算发票张数 this.lblBalanceNum.Text = dayReport.BalanceInvCount.ToString(); //作废预交金发票号码 this.lblWastePrepayNO.Text = dayReport.PrepayWasteInvNO; //作废结算发票号码 this.lblWasteBalanceNO.Text = dayReport.BalanceWasteInvNO; //作废预交金发票张数 this.lblWastePrepayNum.Text = dayReport.PrepayWasteInvCount.ToString(); //作废结算发票张数 this.lblWasteBalanceNum.Text = dayReport.BalanceWasteInvCount.ToString(); //预交金发票区间 this.lblPreInvZone.Text = dayReport.PrepayInvZone; //lblDPrepayCost.Text = dayReport.pr //结算发票区间 this.lblBalanceInvZone.Text = dayReport.BalanceInvZone; this.lblDCashCost.Text = dayReport.TurnInCash.ToString(); lblDBlank1.Text = "0"; //借方合计 this.lblDTotCost.Text = Neusoft.FrameWork.Public.String.ExpressionVal(this.lblDPrepayCost.Text + "+" + this.lblDCashCost.Text + "+" + lblDCheckCost.Text + "+" + lblDBankCost.Text + "+" + lblDBursaryCost.Text + "+" + lblDCityAccountCost.Text + "+" + lblDCityPubCost.Text + "+" + lblDProvinceAccountCost.Text + "+" + lblDProvincePubCost.Text).ToString(); //贷方合计 this.lblLTotCost.Text = Neusoft.FrameWork.Public.String.ExpressionVal(this.lblLPrepayCost.Text + "+" + this.lblLCheckCost.Text + this.lblLBalanceCost.Text + "+" + this.lblLBankCost.Text).ToString(); }