private void txtFactPrice_TextChanged(object sender, EventArgs e) { if (!string.IsNullOrEmpty(txtTotal.Text) && MathHelper.IsDecimal(txtTotal.Text)) { txtCnTotal.Text = RMBHelper.CmycurD(decimal.Parse(txtTotal.Text)); } }
/// <summary> /// 打印收条 /// </summary> /// <param name="TaskID"></param> /// <param name="_LastPointSort"></param> private void PrintReceipt(string TaskID, string _LastPointSort) { //获取用户基本信息 Hashtable ht = new SqlServerHelper().GetHashtableById("View_WorkBase", "TaskID", TaskID); if (ht.Contains("SD")) { string _waterUserId = ht["WATERUSERID"].ToString(); string _waterUserName = ht["WATERUSERNAME"].ToString(); string _SD = ht["SD"].ToString(); string _waterUserAddress = ht["WATERUSERADDRESS"].ToString(); string _TotalFee_CH = "";//合计大写 //获取费用合计 string sqlstr = @"SELECT * FROM (SELECT SUM(FEE) AS FEE,InvoiceType AS FEENAME,'0' AS SORT FROM (SELECT FEE,(SELECT InvoiceTitle FROM Meter_FeeItmes WHERE FeeID=MWF.FeeID) AS InvoiceType FROM Meter_WorkResolveFee MWF,Meter_WorkResolve MWR WHERE MWF.ResolveID=MWR.ResolveID AND MWF.[STATE]=1 AND MWR.TaskID=@TaskID AND PointSort=@LastPoingSort ) T GROUP BY InvoiceType UNION ALL SELECT SUM(CONVERT(decimal,Fee)),'合计','1' FROM Meter_WorkResolveFee MWF,Meter_WorkResolve MWR WHERE MWF.ResolveID=MWR.ResolveID AND MWF.[STATE]=1 AND MWR.TaskID=@TaskID AND PointSort=@LastPoingSort) M WHERE FEE<>0"; //FEE--收费金额 //FEENAME--收费名称 DataTable dt = new SqlServerHelper().GetDateTableBySql(sqlstr, new SqlParameter[] { new SqlParameter("@TaskID", TaskID), new SqlParameter("@LastPoingSort", _LastPointSort) }); if (DataTableHelper.IsExistRows(dt)) { DataRow[] DR = dt.Select("SORT=1"); if (DR.Length.Equals(1)) { _TotalFee_CH = RMBHelper.CmycurD(decimal.Parse(DR[0]["FEE"].ToString())); } //====================================打印 DataSet ds = new DataSet(); DataTable dtTemp = dt.Copy(); dtTemp.TableName = "收据模板"; ds.Tables.Add(dtTemp); FastReport.Report report1 = new FastReport.Report(); try { // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\业扩模板\业扩预算收据模板.frx"); (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO") as FastReport.TextObject).Text = "用 户 号:" + _waterUserId; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + _SD; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + _waterUserName; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + _waterUserAddress; (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + _TotalFee_CH; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + strRealName; (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + _waterUserId; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + _SD; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + _waterUserName; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + _waterUserAddress; (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + _TotalFee_CH; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + strRealName; // register the dataset report1.RegisterData(ds); report1.GetDataSource("收据模板").Enabled = true; //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception ex) { mes.Show("收据打印失败:" + ex.Message); } } } }
private void Btn_Print_Click(object sender, EventArgs e) { if (!CheckBCSS()) { return; } hc["CHARGEClASS"] = 15; if (ReceiptPrintSign.Checked) { if (!Information.IsNumeric(RECEIPTNO.Text)) { MessageBox.Show("收据号只能由数字组成,请输入正确的收据号!"); RECEIPTNO.Focus(); return; } } if (!CHARGETYPEID.Text.Equals("现金")) { if (POSRUNNINGNO.Text.Trim() == "") { MessageBox.Show("请输入交易流水号!"); POSRUNNINGNO.Focus(); return; } } string strCapMoney = RMBHelper.CmycurD(_BCSS); RECEIPTNO.Text = RECEIPTNO.Text.PadLeft(8, '0'); if (Approve_Finance()) { if (ReceiptPrintSign.Checked) { try { FastReport.Report report1 = new FastReport.Report(); // load the existing report report1.Load(Application.StartupPath + @"\PRINTModel\业扩模板\业扩决算收据模板.frx"); (report1.FindObject("txtReceiptNO") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPEID.Text.Equals("现金")) { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher") as FastReport.TextObject).Text = "收 款 员:" + strRealName; if (_BCSS < 0) { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次退款:" + _BCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS") as FastReport.TextObject).Text = "本次实收:" + _BCSS.ToString("F2") + "元"; } (report1.FindObject("txtReceiptNO1") as FastReport.TextObject).Text = "NO." + RECEIPTNO.Text; (report1.FindObject("txtWaterUserNO1") as FastReport.TextObject).Text = "用 户 号:" + waterUserId.Text; (report1.FindObject("txtSD1") as FastReport.TextObject).Text = "受理编号:" + SD.Text; (report1.FindObject("txtWaterUserName1") as FastReport.TextObject).Text = "用户名称:" + waterUserName.Text; (report1.FindObject("txtWaterUserAddress1") as FastReport.TextObject).Text = "地 址:" + waterUserAddress.Text; if (!CHARGETYPEID.Text.Equals("现金")) { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = "交易流水号:" + POSRUNNINGNO.Text; } else { (report1.FindObject("txtRunningNO1") as FastReport.TextObject).Text = ""; } (report1.FindObject("txtCapMoney1") as FastReport.TextObject).Text = "金额大写:" + strCapMoney; (report1.FindObject("txtCasher1") as FastReport.TextObject).Text = "收 款 员:" + strRealName; if (_BCSS < 0) { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = "用户签字:"; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次退款:" + _BCSS.ToString("F2") + "元"; } else { (report1.FindObject("txtWaterUserSign1") as FastReport.TextObject).Text = ""; (report1.FindObject("txtBCSS1") as FastReport.TextObject).Text = "本次实收:" + _BCSS.ToString("F2") + "元"; } //report1.Show(); report1.PrintSettings.ShowDialog = false; report1.Prepare(); report1.Print(); } catch (Exception ex) { MessageBox.Show("收据打印失败:" + ex.Message); } if (Information.IsNumeric(RECEIPTNO.Text)) { RECEIPTNO.Text = (Convert.ToInt32(RECEIPTNO.Text) + 1).ToString().PadLeft(8, '0'); } else { RECEIPTNO.Text = "00000001"; } } else { return; } MessageBox.Show("收费成功!"); TOTALCHARGE.Text = "0"; CHARGEBCYS.Text = "0"; CHARGEBCSS.Text = "0"; BindDepartmentFee(); Btn_Print.Visible = false; Btn_Settle.Visible = false; } else { MessageBox.Show("结算失败!"); } }
public ActionResult ContractTemplate(string ammeterNumber) { List <DbParameter> par = new List <DbParameter>(); par.Add(DbFactory.CreateDbParameter("@AmmeterNumber", ammeterNumber)); var ct = database.FindEntityByWhere <Am_ContractTemplate>(" and AmmeterNumber=@AmmeterNumber ", par.ToArray()); //电表用户关系 List <DbParameter> par1 = new List <DbParameter>(); par1.Add(DbFactory.CreateDbParameter("@Ammeter_Number", ammeterNumber)); par1.Add(DbFactory.CreateDbParameter("@Status", "1")); var ap = database.FindEntityByWhere <Am_AmmeterPermission>(" and Ammeter_Number=@Ammeter_Number and Status=@Status", par1.ToArray()); //电表 List <DbParameter> par2 = new List <DbParameter>(); par2.Add(DbFactory.CreateDbParameter("@Number", ammeterNumber)); var ammeter = database.FindEntityByWhere <Am_Ammeter>(" and Number=@Number", par2.ToArray()); //电表模板 List <DbParameter> par3 = new List <DbParameter>(); par3.Add(DbFactory.CreateDbParameter("@Ammeter_Number", ammeterNumber)); var template = database.FindEntityByWhere <Am_Template>(" and Ammeter_Number=@Ammeter_Number", par3.ToArray()); //电表模板内容 List <DbParameter> par4 = new List <DbParameter>(); par4.Add(DbFactory.CreateDbParameter("@Template_Number", template.Number)); var content = database.FindList <Am_TemplateContent>(" and Template_Number=@Template_Number", par4.ToArray()); //用户 List <DbParameter> par5 = new List <DbParameter>(); par5.Add(DbFactory.CreateDbParameter("@Number", ammeter.U_Number)); var user = database.FindEntityByWhere <Ho_PartnerUser>(" and Number=@Number", par5.ToArray()); var contract = new Am_Contract(); if (ct == null || ct.Number == null) { contract = new Am_Contract { F_UserName = ammeter.UY_UserName, F_U_Name = ammeter.UY_Name, F_U_Number = ammeter.UY_Number, Number = null, AmmeterNumber = ammeter.Number, Address = ammeter.Address, AmmeterCode = ammeter.AM_Code, PenaltyMoney = ap.BillCyc, Cell = ammeter.Cell, City = ammeter.City, County = ammeter.County, CreateTime = DateTime.Now, CycleTime = ap.BillCyc, DepositMoney = content.FirstOrDefault(o => o.ChargeItem_Title == "押金").Money, Money = content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money, DepositMoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "押金").Money.Value.ToString("0.00"))), Floor = ammeter.Floor, HoUserMobile = ammeter.UY_UserName, UserName = ammeter.UserName, HoUserName = ammeter.UY_Name, U_Name = ammeter.U_Name, U_Mobile = ammeter.UserName, MoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money.Value.ToString("0.00"))), Province = ammeter.Province, Remark = "", Room = ammeter.Room, TotalMoney = content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money, TotalMoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money.Value.ToString("0.00"))), U_Number = ammeter.U_Number, RentBeginTime = ap.BeginTime.Value, RentEndTime = ap.EndTime, HoName = ammeter.UY_Name, U_Code = user.CardCode, RentDate = ap.EndTime.Value.Year * 12 + ap.EndTime.Value.Month - ap.BeginTime.Value.Year * 12 - ap.BeginTime.Value.Month, }; return(Content(contract.ToJson())); } else { contract = new Am_Contract { Number = ct.Number, Address = ct.Address, AgoDay = 1, AmmeterCode = ammeter.AM_Code, AmmeterNumber = ammeter.Number, Am_Money = ct.Am_Money, BackMoney = ct.BackMoney, BackTime = ct.BackTime, BankCode = ct.BankCode, BankInfo = ct.BankInfo, BankUserName = ct.BankUserName, Cell = ct.Cell, City = ct.City, ContractCode = "", County = ct.County, CreateAddress = "", CreateTime = DateTime.Now, CycleTime = ap.BillCyc, DepositMoney = content.FirstOrDefault(o => o.ChargeItem_Title == "押金").Money, Money = content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money, DepositMoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "押金").Money.Value.ToString("0.00"))), Floor = ct.Floor, F_UserName = ammeter.UY_UserName, F_U_Name = ammeter.UY_Name, F_U_Number = ammeter.UY_Number, GarbageMoney = ct.GarbageMoney, GoMoney = ct.GoMoney, GoOnTime = ct.GoOnTime, GoTime = ct.GoTime, HallNum = ct.HallNum, HoName = ct.HoName, HoUserMobile = ammeter.UserName, UserName = ammeter.UserName, HoUserName = ammeter.UY_Name, HouseSize = ct.HouseSize, KitchenNum = ct.KitchenNum, MoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money.Value.ToString("0.00"))), NetMoney = ct.NetMoney, PenaltyMoney = ct.PenaltyMoney, PenaltyTime = ct.PenaltyTime, PropertyMoeny = ct.PropertyMoeny, Province = ct.Province, Remark = ct.Remark, RentBeginTime = ap.BeginTime, RentDate = ap.EndTime.Value.Year * 12 + ap.EndTime.Value.Month - ap.BeginTime.Value.Year * 12 - ap.BeginTime.Value.Month, RentEndTime = ap.EndTime, RentMoneyTime = ct.RentMoneyTime, Room = ct.Room, RoomNum = ct.RoomNum, Status = 0, StatusStr = "", TemplateNumber = ct.Number, ToiletNum = ct.ToiletNum, TotalMoney = content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money, TotalMoneyStr = RMBHelper.CmycurD(decimal.Parse(content.FirstOrDefault(o => o.ChargeItem_Title == "租金").Money.Value.ToString("0.00"))), UpdateTime = DateTime.Now, Useing = ct.Useing, UseingSize = ct.UseingSize, U_Code = user.CardCode, U_Mobile = user.Account, U_Name = user.Name, U_Number = user.Number, WaterMoney = ct.WaterMoney }; } return(Content(contract.ToJson())); }