zoukankan      html  css  js  c++  java
  • 交款功能代码

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using WeifenLuo.WinFormsUI.Docking;
    using System.Drawing.Printing;
    using System.IO;
    
    namespace DBzd
    {
        public partial class FeesFrm : DockContent
        {
            private MainFrm mf;
            //交款方式
            private string jkfs;
            //图片信息
            private byte[] byteZhiPiaoA = null;
            private byte[] byteZhiPiaoB = null;
            private byte[] byteHuiKuanA = null;
            private byte[] byteHuiKuanB = null;
            private byte[] byteQianTiaoA = null;
            private double trueprice;
            public FeesFrm()
            {
                InitializeComponent();
            }
            public FeesFrm(MainFrm f)
            {
                InitializeComponent();
                mf = f;
    
            }
    
            private void FeesFrm_Load(object sender, EventArgs e)
            {
                #region 年度列表
    
                toolStripComboBox1.Items.Clear();
                var q = from p in mf.DS.UnitPaperTask
                        orderby p.year descending
                        group p by p.year into g
                        select new
                        {
                            year = g.Key,
                            g
                        };
    
                foreach (var it in q)
                {
                    toolStripComboBox1.Items.Add(it.year);                
                }
                toolStripComboBox1.SelectedIndex = 0;
                #endregion
    
                #region 加载单位类别
                toolStripComboBox3.Items.Clear();
                var q1 = from k in mf.DS.Unit
                       //  orderby k.kind descending
                         group k by k.kind into g
                         select new
                         {
                             kind = g.Key,
                             g
                         };
                foreach (var i in q1)
                {
                    toolStripComboBox3.Items.Add(i.kind);
                  
                }
                toolStripComboBox3.SelectedIndex = 0;
                #endregion
    
                combSKFS.SelectedIndex = 0;
                btnSave.Enabled = false;
            }
    
            #region 工具栏
            //工具栏 单位类别 下拉列表变换
            private void toolStripComboBox3_SelectedIndexChanged(object sender, EventArgs e)
            {
                combJKDW.Items.Clear();
                var q5 = from p in mf.DS.Unit.AsEnumerable()
                         where p.kind == toolStripComboBox3.SelectedItem.ToString().Trim() && p.Istake == ""
                         select p;
                foreach (var i in q5)
                {
                    Unit un = new Unit();
                    un.unitid = i.unitid;
                    un.shortname = i.shortname;
                    un.tel = i.Tel;
                    un.allname = i.allname;
                    combJKDW.Items.Add(un);
    
                }
                combJKDW.DisplayMember = "shortname";
                if (combJKDW.Items.Count > 0)
                {
                    combJKDW.SelectedIndex = 0;
                }
    
    
            }
            //搜索单位
            private void tsTxtSearch_TextChanged(object sender, EventArgs e)
            {
                combJKDW.Items.Clear();
                string upper = tsTxtSearch.Text.ToUpper();
                var q5 = from p in mf.DS.Unit.AsEnumerable()
                         where p.Istake == ""
                         select p;
                foreach (var i in q5)
                {
    
                    string namecode = PinYin.GetCodstring(i.shortname);
                    if (namecode.StartsWith(upper))
                    {
                        Unit un = new Unit();
                        un.unitid = i.unitid;
                        un.allname = i.allname;
                        un.shortname = i.shortname;
                        un.tel = i.Tel;
                        combJKDW.Items.Add(un);
    
                    }
    
                }
                combJKDW.DisplayMember = "shortname";
                if (combJKDW.Items.Count > 0)
                {
                    combJKDW.SelectedIndex = 0;
                }
    
            }
    
            #endregion
    
            
            //显示计划金额及企业任务
            private void PlantMoney()
            {
                //txtTruePrice.Text = "";
                txtPlantMoeny.Text = "";
                Unit un = combJKDW.SelectedItem as Unit;
    
                List<string> qflag = (from p in mf.DS.Fees.AsEnumerable() where p.unitid == un.unitid && p.year == toolStripComboBox1.SelectedItem.ToString().Trim() select p.flag).ToList<string>();
                if (qflag.Count > 0)
                {
                    var qplantprices = from p in mf.DS.UnitMoneyTask.AsEnumerable()
                                       where p.unitid == un.unitid
                                       select p;
                    foreach (var i in qplantprices)
                    {
    
                        txtPlantMoeny.Text = i.totalMoney.ToString();
                        //  txtCompTask.Text = i.compprices.ToString();
                        txtUnitTel.Text = un.tel;
    
    
                    }
                    //查询计划金额表,是否有该单位的计划金额?有:无
                    if (qplantprices.Count() > 0)
                    {
                        if (txtCompTask.Text != "0")
                        {
                            txtTruePrice.Text = txtTotalMoney.Text = (double.Parse(txtPlantMoeny.Text) + double.Parse(txtCompTask.Text) + double.Parse(txtZiDingMoney.Text.Trim())).ToString();
                        }
                        else
                        {
                            txtTruePrice.Text = txtTotalMoney.Text = (double.Parse(txtPlantMoeny.Text) + double.Parse(txtZiDingMoney.Text.Trim())).ToString();
                        }
                    }
                    else
                    {
                        txtPlantMoeny.Text = labTal.Text;
                    }
    
                    var q = from p in mf.DS.Fees.AsEnumerable() where p.unitid == un.unitid select p;
                    foreach (var i in q)
                    {
                        txtDrawee.Text = i.drawee;
                        txtDraweeTel.Text = i.draweetel;
                        txtTruePrice.Text = i.tureprice.ToString();
                        combSKR.Text = i.payee;
                        dateTimePicker1.Value = i.paytime;
                        switch (i.flag)
                        {
                            case "完成":
                                rabOver.Checked = true;
                                break;
                            case "部分":
                                rabPat.Checked = true;
                                break;
                            case "未交":
                                rabNot.Checked = true;
    
                                break;
                        }
                        txtbz.Text = i.bz;
                    }
                    txtDrawee.Enabled = txtDraweeTel.Enabled = txtTruePrice.Enabled = combSKR.Enabled = btnSave.Enabled = dateTimePicker1.Enabled = btnEdit.Enabled = false;
                }
                else
                {
    
                    txtDrawee.Enabled = txtDraweeTel.Enabled = txtTruePrice.Enabled = combSKR.Enabled = btnSave.Enabled = dateTimePicker1.Enabled = btnEdit.Enabled = true;
                    txtDrawee.Text = txtDraweeTel.Text = "";
    
                    txtPlantMoeny.Text = labTal.Text;
                    if (txtPlantMoeny.Text == "")
                    {
                        txtPlantMoeny.Text = "0";
                    }
    
                    if (txtCompTask.Text != "0")
                    {
                        txtTruePrice.Text = txtTotalMoney.Text = (double.Parse(txtPlantMoeny.Text.Trim()) + double.Parse(txtCompTask.Text.Trim()) + double.Parse(txtZiDingMoney.Text.Trim())).ToString();
                    }
                    else
                    {
                        txtTruePrice.Text = txtTotalMoney.Text = (double.Parse(txtPlantMoeny.Text.Trim()) + double.Parse(txtZiDingMoney.Text.Trim())).ToString();
                    }
                    rabNot.Checked = true;
                    btnSave.Text = "保存";
                }
    
            }
    
            //显示计划任务列表
            private void ShowPlantTask()
            {
                listView1.Items.Clear();
                //实现了视图功能
                Unit un = combJKDW.SelectedItem as Unit;
                var pt = from p in mf.DS.Paper.AsEnumerable()
                         from ut in mf.DS.UnitPaperTask.AsEnumerable()
                         where ut.unitid == un.unitid && ut.paperid == p.paperid && ut.year == toolStripComboBox1.SelectedItem.ToString().Trim()
                         select new
                         {
                             id = ut.id,
                             paperid = p.paperid,
                             bk = p.name,
                             nm = ut.plantnum,
                             // tnm = ut.truenum,
                             price = p.price,
                             bt = p.subsidy,
                             ye = ut.year
                         };
                foreach (var i in pt)
                {
    
                    //ListViewItem lv = new ListViewItem(new string[] { i.bk, i.nm.ToString(), i.tnm.ToString(), (i.price - i.bt).ToString(), i.ye });
                    ListViewItem lv = new ListViewItem(new string[] { i.bk, i.nm.ToString(), (i.price - i.bt).ToString(), i.ye });
                    lv.Tag = i.id;
                    listView1.Items.Add(lv);
                }
    
            }
            //计算、显示总金额
            private void CalListViewMoney()
            {
                double money = 0;
                foreach (ListViewItem item in listView1.Items)
                {
                    int fensu = Int32.Parse(item.SubItems[2].Text.Trim());
                    double danjia = double.Parse(item.SubItems[3].Text.Trim());
                    money += fensu * danjia;
                }
                labTal.Text = money.ToString();
    
            }
            //选择单位
            private void combJKDW_SelectedIndexChanged(object sender, EventArgs e)
            {
                //显示自订报刊金额
                getZidinbBaoKan();
                //显示计划金额
                PlantMoney();
                //显示实际订刊数
                ShowPlantTask();
                //计算实际金额
                CalListViewMoney();
                //显示不同交款方式
                ShowJiaoKuanFanShi();
                //显示不同交款方式页
                //  showTabControlPt();
                //显示批复
                getPiFu();
                txtbaokan.Text = txtNumber.Text = "";
                combJKDW.Focus();
            }
            //todo:是否要重新设计?有了计划任务的单位,单位计划金额应即时程序算出来,不应从库取;
            //而只有计划金额无任务的单位才从,库在取(只包括几个乡镇!他们是为完成总任务做备份金用的)
            private void ShowJiaoKuanFanShi()
            {
                Unit un = combJKDW.SelectedItem as Unit;
                var q = from p in mf.DS.Fees.AsEnumerable()
                        where p.unitid == un.unitid
                        select p;
                foreach (var i in q)
                {
                    switch (i.paykind)
                    {
                        case "现金":
                            combSKFS.SelectedIndex = 0;
                            //tabControl1.SelectedIndex = 0;
                            break;
                        case "支票":
                            combSKFS.SelectedIndex = 1;
                            combBank.Text = i.bank;
                            txtSbgetMoeny.Text = i.getpaysb;
                            rabMoney.Checked = (i.checkkind == "现金支票") ? true : false;
                            rabZhip.Checked = (i.checkkind == "转账支票") ? true : false;
                            dateTimePickerMoney.Value = i.getpaytime;
                            //  tabControl1.SelectedIndex = 1;
                            break;
                        case "汇款":
                            combSKFS.SelectedIndex = 2;
                            txtPayAccount.Text = i.getpayaccount;
                            dateTimePicker5.Value = i.getpaytime;
                            //   tabControl1.SelectedIndex = 2;
                            break;
                        case "欠条":
                            combSKFS.SelectedIndex = 3;
                            //txtPayAccount.Text = i.getpayaccount;
                            //dateTimePicker5.Value = i.getpaytime;
                            // tabControl1.SelectedIndex = 3;
                            break;
    
                    }
                }
            }
            //显示自订报刊金额
            private void getZidinbBaoKan()
            {
                //得到单位ID
                Unit u = combJKDW.SelectedItem as Unit;
                //得到非党刊id;
                List<string> Arid = (from p in mf.DS.UnitPaperTask.AsEnumerable() where p.unitid == u.unitid select p.paperid).ToList<string>();
                List<string> dkid = (from p in mf.DS.Paper.AsEnumerable() where p.IsDanKan == "" select p.paperid).ToList<string>();
                int caljg = 0;
                txtZiDingMoney.Text = "0";
                foreach (var i in dkid)
                {
    
                    if (Arid.Contains(i))
                    {
                        int m = 0;
                        var q = from p in mf.DS.Paper.AsEnumerable()
                                from upt in mf.DS.UnitPaperTask.AsEnumerable()
                                where upt.unitid == u.unitid && p.paperid == i
                                select new
                                {
                                    price = p.price,
                                    subprice = p.subsidy,
                                    numb = upt.plantnum
                                };
                        foreach (var im in q)
                        {
                            m = Convert.ToInt32(im.price - im.subprice) * im.numb;
                        }
                        caljg += m;
                    }
                }
                txtZiDingMoney.Text = caljg.ToString();
            }
    
    
            //双击列表要修改数量
            private void listView1_MouseDoubleClick(object sender, MouseEventArgs e)
            {
                if (listView1.SelectedItems.Count > 0)
                {
                    txtNumber.Text = "";
                    txtbaokan.Text = listView1.SelectedItems[0].Text;
                    txtNumber.Text = listView1.SelectedItems[0].SubItems[2].Text;
                }
            }
            //编辑数量
            private void btnEdit_Click(object sender, EventArgs e)
            {
                foreach (ListViewItem item in listView1.Items)
                {
                    if (item.Text == txtbaokan.Text)
                    {
                        item.SubItems[2].Text = txtNumber.Text.Trim();
                    }
                }
                txtbaokan.Text = "";
                txtNumber.Text = "";
                CalListViewMoney();
                //保存实际订刊数
                SaveTruePaperNumb();
            }
    
            //todo:计划金额列表中,无单位计划金额,需要新查询计算。1、单位,2、分任务或分金额。如有任务无金额?有金额无任务?
            //保存按键
            private void btnSave_Click(object sender, EventArgs e)
            {
                Fees fees = new Fees();
                Unit un = combJKDW.SelectedItem as Unit;
                fees.unitid = un.unitid;//单位代码
                fees.paykind = jkfs;//交款方式
                fees.plantprrice = double.Parse(txtTotalMoney.Text.Trim());//计划总额
                fees.tureprice = double.Parse(txtTruePrice.Text.Trim());//实收金额
                fees.drawee = txtDrawee.Text;//交款人
                fees.draweetel = txtDraweeTel.Text;//交款人电话
                fees.payee = combSKR.SelectedItem.ToString();//收款人
                fees.paytime = dateTimePicker1.Value;//交款时间
                string flag = "";
                foreach (RadioButton rb in gBoxFlag.Controls)
                {
                    if (rb.Checked == true)
                    {
                        flag = rb.Text;
                    }
                }
                fees.flay = flag;//进度标注(完成,部分,未交
                fees.bz = txtbz.Text;
                //todo:系统的配置年度设置
                fees.year = toolStripComboBox1.SelectedItem.ToString().Trim();
    
                //判断
    
                switch (jkfs)
                {
                    case "现金":
                        //判断是新增还是修改
                        if (btnSave.Text == "保存")
                        {
                            BKDataSet.FeesRow fr = mf.DS.Fees.AddFeesRow(fees.unitid, fees.paykind, fees.plantprrice, fees.tureprice, fees.drawee, fees.draweetel, fees.payee, fees.paytime, fees.flay, fees.bz, fees.year, "", "", "", DateTime.Now, null, null, "");
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已保存!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
                        }
                        if (btnSave.Text == "修改")
                        {
                            int id = (from p in mf.DS.Fees.AsEnumerable() orderby p.id descending where p.unitid == un.unitid && p.flag == "完成" && p.year == toolStripComboBox1.SelectedItem.ToString().Trim() select p.id).SingleOrDefault();
                            BKDataSet.FeesRow fr = mf.DS.Fees.FindByid(id);
                            fr.tureprice = double.Parse(txtTruePrice.Text.Trim()); fr.drawee = txtDrawee.Text;
                            fr.draweetel = txtDraweeTel.Text; fr.paykind = jkfs; fr.payee = combSKR.SelectedItem.ToString();
                            fr.year = toolStripComboBox1.SelectedItem.ToString().Trim();
                            fr.flag = flag; fr.bz = txtbz.Text; fr.paytime = dateTimePicker1.Value;
    
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已修改!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
    
                        }
                        break;
                    case "支票":
                        //判断是新增还是修改
                        if (btnSave.Text == "保存")
                        {
                            string checkkind = (rabMoney.Checked == true) ? "现金支票" : "转账支票";
    
                            BKDataSet.FeesRow fr = mf.DS.Fees.AddFeesRow(fees.unitid, fees.paykind, fees.plantprrice, fees.tureprice, fees.drawee, fees.draweetel, fees.payee, fees.paytime, fees.flay, fees.bz, fees.year, checkkind, combBank.Text, txtSbgetMoeny.Text, DateTime.Now, byteZhiPiaoA, byteZhiPiaoB, "");
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已保存!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
                        }
                        if (btnSave.Text == "修改")
                        {
                            int id = (from p in mf.DS.Fees.AsEnumerable() orderby p.id descending where p.unitid == un.unitid && p.flag == "完成" && p.year == toolStripComboBox1.SelectedItem.ToString().Trim() select p.id).SingleOrDefault();
                            BKDataSet.FeesRow fr = mf.DS.Fees.FindByid(id);
                            fr.tureprice = double.Parse(txtTruePrice.Text.Trim()); fr.drawee = txtDrawee.Text;
                            fr.draweetel = txtDraweeTel.Text; fr.paykind = jkfs; fr.payee = combSKR.SelectedItem.ToString();
                            fr.year = toolStripComboBox1.SelectedItem.ToString().Trim();
                            fr.flag = flag; fr.bz = txtbz.Text; fr.getpaytime = dateTimePickerMoney.Value; fr.getpaysb = txtSbgetMoeny.Text; fr.bank = combBank.Text;
    
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已修改!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
    
                        }
                        break;
                    case "汇款":
                        //判断是新增还是修改
                        if (btnSave.Text == "保存")
                        {
    
                            BKDataSet.FeesRow fr = mf.DS.Fees.AddFeesRow(fees.unitid, fees.paykind, fees.plantprrice, fees.tureprice, fees.drawee, fees.draweetel, fees.payee, fees.paytime, fees.flay, fees.bz, fees.year, "", "", "", DateTime.Now, byteHuiKuanA, byteHuiKuanB, txtPayAccount.Text);
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已保存!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
                        }
                        if (btnSave.Text == "修改")
                        {
                            int id = (from p in mf.DS.Fees.AsEnumerable() orderby p.id descending where p.unitid == un.unitid && p.flag == "完成" && p.year == toolStripComboBox1.SelectedItem.ToString().Trim() select p.id).SingleOrDefault();
                            BKDataSet.FeesRow fr = mf.DS.Fees.FindByid(id);
                            fr.tureprice = double.Parse(txtTruePrice.Text.Trim()); fr.drawee = txtDrawee.Text;
                            fr.draweetel = txtDraweeTel.Text; fr.paykind = jkfs; fr.payee = combSKR.SelectedItem.ToString();
                            fr.year = toolStripComboBox1.SelectedItem.ToString().Trim();
                            fr.flag = flag; fr.bz = txtbz.Text; fr.paytime = dateTimePicker1.Value; fr.getpaytime = dateTimePicker5.Value; fr.getpayaccount = txtPayAccount.Text;
    
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已修改!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
    
                        }
                        break;
                    case "欠条":
                        //判断是新增还是修改
                        if (btnSave.Text == "保存")
                        {
                            BKDataSet.FeesRow fr = mf.DS.Fees.AddFeesRow(fees.unitid, fees.paykind, fees.plantprrice, fees.tureprice, fees.drawee, fees.draweetel, fees.payee, fees.paytime, fees.flay, fees.bz, fees.year, "", "", "", DateTime.Now, null, null, "");
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已保存!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
                        }
                        if (btnSave.Text == "修改")
                        {
                            int id = (from p in mf.DS.Fees.AsEnumerable() orderby p.id descending where p.unitid == un.unitid && p.year == toolStripComboBox1.SelectedItem.ToString().Trim() select p.id).SingleOrDefault();
                            BKDataSet.FeesRow fr = mf.DS.Fees.FindByid(id);
                            fr.tureprice = double.Parse(txtTruePrice.Text.Trim()); fr.drawee = txtDrawee.Text;
                            fr.draweetel = txtDraweeTel.Text; fr.paykind = jkfs; fr.payee = combSKR.SelectedItem.ToString();
                            fr.year = toolStripComboBox1.SelectedItem.ToString().Trim();
                            fr.flag = flag; fr.bz = txtbz.Text; fr.paytime = dateTimePicker1.Value;
    
                            int zed = mf.feesTap.Update(mf.DS.Fees);
                            if (zed > 0)
                            {
                                MessageBox.Show("已修改!");
                            }
                            if (combJKDW.SelectedIndex < combJKDW.Items.Count - 1)
                            {
                                combJKDW.SelectedIndex = combJKDW.SelectedIndex + 1;
                            }
    
    
                        }
    
                        break;
    
    
    
                }
    
    
            }
            //保存实际订刊数
            private void SaveTruePaperNumb()
            {
                for (int i = 0; i < listView1.Items.Count; i++)
                {
                    int u = Int32.Parse(listView1.Items[i].Tag.ToString());
                    BKDataSet.UnitPaperTaskRow rw = mf.DS.UnitPaperTask.FindByid(u);
                    string j = listView1.Items[i].SubItems[2].Text.Trim();
                    // rw.truenum = Int32.Parse(j);
                }
                mf.unitpapertaskTap.Update(mf.DS.UnitPaperTask);
            }
            //大写金额
            private void txtTotalMoney_TextChanged(object sender, EventArgs e)
            {
                labRMB.Text = "人民币(大写):";
                if (txtTruePrice.Text != "")
                {
                    labRMB.Text += RMBCapitalization.RMBAmount(double.Parse(txtTruePrice.Text));
                }
    
            }
           
            //清除文本
            private static void clearTXT(BKDataSet.FeesRow fr)
            {
                fr.unitid = "";
                fr.plantprice = 0;
                fr.tureprice = 0;
                fr.drawee = "";
                fr.draweetel = "";
                fr.paykind = "";
                fr.paytime = DateTime.Now;
                fr.payee = "";
                fr.bank = "";
                fr.getpayaccount = "";
                fr.getpaysb = "";
                fr.getpaytime = DateTime.Now;
                fr.year = "";
                fr.flag = "";
                fr.bz = "";
            }
            //交款实际金额变动
            private void txtTruePrice_TextChanged(object sender, EventArgs e)
            {
                if (!System.Text.RegularExpressions.Regex.IsMatch(txtTruePrice.Text, @"^([0-9]*).?[0-9]*$"))
                {
                    MessageBox.Show("请输入正确的金额!");
                    return;
                }
                //  double caizhi = Convert.ToDouble(txtTotalMoney.Text.Trim()) - Convert.ToDouble(txtTruePrice.Text.Trim());
                //if (caizhi > 0)
                //{
                //    labCaZhi.Text = "少收金额:";
                //    txtChazhi.Text = caizhi.ToString("0.00");
                //}
                //else
                //{
                //    labCaZhi.Text = "多收金额:";
                //    txtChazhi.Text = (-caizhi).ToString("0.00");
                //}
    
                loadPrintText();
            }
            //交款方式
            private void combSKFS_SelectedIndexChanged(object sender, EventArgs e)
            {
                jkfs = combSKFS.SelectedItem.ToString().Trim();
                for (int i = 0; i < tabControl1.TabPages.Count; i++)
                {
                    if (tabControl1.TabPages[i].Text == jkfs)
                    {
                        tabControl1.SelectedTab = tabControl1.TabPages[i];
                        if (tabControl1.SelectedTab.Text == "欠条")
                        {
                            loadPrintText();
                        }
                    }
    
                }
    
            }
    
            //支票正面图片
            private void pictureBox1_DoubleClick(object sender, EventArgs e)
            {
    
                if (DialogResult.OK == openFileDialog1.ShowDialog())
                {
    
                    try
                    {
                        // 读成二进制
                        byteZhiPiaoA = File.ReadAllBytes(openFileDialog1.FileName);
                        // 直接返这个存储到数据就行了 cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
    
                        // 输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
                        pictureBox1.Image = System.Drawing.Image.FromStream(new MemoryStream(byteZhiPiaoA));
                        this.pictureBox1.SizeMode = PictureBoxSizeMode.Zoom;
    
                        // 如果保存成文件:File.WriteAllBytes(@"d:	ext.jpg", bytes);
                    }
                    catch { }
                }
            }
    
            //支票反面图片
            private void pictureBox2_DoubleClick(object sender, EventArgs e)
            {
                //经过实践,我们可以通过FileStream 来打开文件,这样就可以实现不锁定Image文件,到时可以让多用户同时访问Image文件。具体文件实现如下:
                //FileStream fs = File.OpenRead(Path); //OpenRead
                //int filelength = 0;
                //filelength = (int)fs.Length; //获得文件长度 
                //Byte[] image = new Byte[filelength]; //建立一个字节数组 
                //fs.Read(image, 0, filelength); //按字节流读取 
                //System.Drawing.Image result = System.Drawing.Image.FromStream(fs);
                //fs.Close();
                if (DialogResult.OK == openFileDialog1.ShowDialog())
                {
    
                    try
                    {
                        // 读成二进制
                        byteZhiPiaoB = File.ReadAllBytes(openFileDialog1.FileName);
                        // 直接返这个存储到数据就行了 cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
    
                        // 输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
                        pictureBox2.Image = System.Drawing.Image.FromStream(new MemoryStream(byteZhiPiaoB));
                        this.pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
    
                        // 如果保存成文件:File.WriteAllBytes(@"d:	ext.jpg", bytes);
                    }
                    catch { }
                }
    
            }
            //欠条图片
            private void pictureBox3_DoubleClick(object sender, EventArgs e)
            {
                if (DialogResult.OK == openFileDialog1.ShowDialog())
                {
    
                    try
                    {
                        // 读成二进制
                        byteQianTiaoA = File.ReadAllBytes(openFileDialog1.FileName);
                        // 直接返这个存储到数据就行了 cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
    
                        // 输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
                        pictureBox3.Image = System.Drawing.Image.FromStream(new MemoryStream(byteQianTiaoA));
                        this.pictureBox3.SizeMode = PictureBoxSizeMode.Zoom;
    
                        // 如果保存成文件:File.WriteAllBytes(@"d:	ext.jpg", bytes);
                    }
                    catch { }
                }
    
            }
            //汇款正面
            private void pictureBox5_DoubleClick(object sender, EventArgs e)
            {
                if (DialogResult.OK == openFileDialog1.ShowDialog())
                {
    
                    try
                    {
                        // 读成二进制
                        byteHuiKuanA = File.ReadAllBytes(openFileDialog1.FileName);
                        // 直接返这个存储到数据就行了 cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
    
                        // 输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
                        pictureBox5.Image = System.Drawing.Image.FromStream(new MemoryStream(byteHuiKuanA));
                        this.pictureBox5.SizeMode = PictureBoxSizeMode.Zoom;
    
                        // 如果保存成文件:File.WriteAllBytes(@"d:	ext.jpg", bytes);
                    }
                    catch { }
                }
            }
            //汇款反面
            private void pictureBox6_DoubleClick(object sender, EventArgs e)
            {
                if (DialogResult.OK == openFileDialog1.ShowDialog())
                {
    
                    try
                    {
                        // 读成二进制
                        byteHuiKuanB = File.ReadAllBytes(openFileDialog1.FileName);
                        // 直接返这个存储到数据就行了 cmd.Parameters.Add("@image", SqlDbType.Image).Value = bytes;
    
                        // 输出二进制 在这里把数据中取到的值放在这里byte[] bytes=(byte[])model.image;
                        pictureBox6.Image = System.Drawing.Image.FromStream(new MemoryStream(byteHuiKuanB));
                        this.pictureBox6.SizeMode = PictureBoxSizeMode.Zoom;
    
    
    
                        // 如果保存成文件:File.WriteAllBytes(@"d:	ext.jpg", bytes);
                    }
                    catch { }
                }
            }
    
    
            private void tsbEdit_Click(object sender, EventArgs e)
            {
                if (txtDrawee.Enabled == txtDraweeTel.Enabled == txtTruePrice.Enabled == combSKR.Enabled == btnSave.Enabled == dateTimePicker1.Enabled == btnEdit.Enabled == false)
                {
                    txtDrawee.Enabled = txtDraweeTel.Enabled = txtTruePrice.Enabled = combSKR.Enabled = btnSave.Enabled = dateTimePicker1.Enabled = btnEdit.Enabled = true;
                    btnSave.Text = "修改";
                }
                else
                {
                    txtDrawee.Enabled = txtDraweeTel.Enabled = txtTruePrice.Enabled = combSKR.Enabled = btnSave.Enabled = dateTimePicker1.Enabled = btnEdit.Enabled = false;
                    btnSave.Text = "保存";
                }
            }
    
            private void rabOver_CheckedChanged(object sender, EventArgs e)
            {
                BtnSaveEnabled();
            }
    
            private void BtnSaveEnabled()
            {
                if (rabOver.Checked || rabPat.Checked)
                {
                    btnSave.Enabled = true;
                }
                else
                {
                    btnSave.Enabled = false;
                }
    
            }
    
            private void rabPat_CheckedChanged(object sender, EventArgs e)
            {
                BtnSaveEnabled();
            }
    
            private void btnUp_Click(object sender, EventArgs e)
            {
    
                if (txtTruePrice.Text != "")
                {
    
                    if (btnUp.Text == "")
                    {
                        trueprice = double.Parse(txtTotalMoney.Text.Trim());
                        txtTruePrice.Text = Math.Ceiling(trueprice).ToString("0");
                        btnUp.Text = "";
                    }
                    else
                    {
                        trueprice = double.Parse(txtTotalMoney.Text.Trim());
                        txtTruePrice.Text = Math.Floor(trueprice).ToString("0");
                        btnUp.Text = "";
                    }
    
                }
            }
    
    
            #region 功能区
    
            #region 打印内容设置
            #region 欠条
            private void loadPrintText()
            {
                Unit u = combJKDW.SelectedItem as Unit;
                rtbDoc.Font = new Font("仿宋", 16, FontStyle.Regular);
    
                rtbDoc.Text = "                         欠   条" + "
    ";
                rtbDoc.Text += "
    ";
                //rtbDoc.Text += "    今欠宣传部" + mf.configbk.YEAR + "年度,党报党刊款(小写):¥" + txtTruePrice.Text + "元。
    " + "大写人民币:" + RMBCapitalization.RMBAmount(double.Parse(txtTruePrice.Text)) + "。";
                rtbDoc.Text += "
    
    ";
                rtbDoc.Text += "
                             欠款单位:" + u.allname;
                rtbDoc.Text += "
                             打欠条人:" + "               ";
                rtbDoc.Text += "
                             电    话:" + txtDraweeTel.Text;
                rtbDoc.Text += "
                             日    期:" + System.DateTime.Now.ToString("yyyy年MM月dd日");
    
    
    
            }
            #endregion
            #region 批复
            private void getPiFu()
            {
                Unit u = combJKDW.SelectedItem as Unit;
                rtbDoc.Font = new Font("仿宋", 16, FontStyle.Regular);
                //todo:编号设置
                rtbDocPF.Font = new Font("仿宋", 16, FontStyle.Regular);
                rtbDocPF.Text = "第   号" + "
    ";
                rtbDocPF.Text += "
    ";
                //rtbDocPF.Text += "          关于提取" + mf.configbk.YEAR + "年度重点党报党刊征订奖金的批复";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += u.allname + ":";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "
    ";
                //rtbDocPF.Text += "    经研究同意,对按时完成" + mf.configbk.YEAR + "年度重点党报党刊征订任务的单位给予奖励,奖金为报款总额的10%,资金自筹。
    ";
                //rtbDocPF.Text += "    你单位按要求完成了任务,报款总额为:¥" + txtTotalMoney.Text + "元,大写:" + labRMB.Text.ToString() + ",奖金为" + double.Parse(txtTotalMoney.Text) * .1 + "人民币(大写):" + RMBCapitalization.RMBAmount(double.Parse(txtTotalMoney.Text) * .1) + "。
    ";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "
                                  中共滦县县委宣传部";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "                                 " + System.DateTime.Now.ToString("yyyy年MM月dd日");
                rtbDocPF.Text += "
    ";
                rtbDocPF.Text += "…………………………………………………………………………";
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("第   号" + "
    ");
                rtbDocPF.AppendText("
    ");
                //rtbDocPF.AppendText("          关于提取" + mf.configbk.YEAR + "年度重点党报党刊征订奖金的批复");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText(u.allname + ":");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("
    ");
                //rtbDocPF.AppendText("    经研究同意,对按时完成" + mf.configbk.YEAR + "年度重点党报党刊征订任务的单位给予奖励,奖金为报款总额的10%,资金自筹。
    ");
                //rtbDocPF.AppendText("    你单位按要求完成了任务,报款总额为:¥" + txtTotalMoney.Text + "元,大写:" + labRMB.Text.ToString() + ",奖金为" + double.Parse(txtTotalMoney.Text) * .1 + "人民币(大写):" + RMBCapitalization.RMBAmount(double.Parse(txtTotalMoney.Text) * .1) + "。
    ");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("
                                  中共滦县县委宣传部");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("
    ");
                rtbDocPF.AppendText("                                 " + System.DateTime.Now.ToString("yyyy年MM月dd日"));
                rtbDocPF.AppendText("
    ");
    
            }
            #endregion
            #endregion
    
            #region Printing
            private int checkPrint;
    
            private void PrintDocument1_BeginPrint(object sender, System.Drawing.Printing.PrintEventArgs e)
            {
    
                checkPrint = 0;
    
            }
    
    
            private void PrintDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    checkPrint = rtbDoc.Print(checkPrint, rtbDoc.TextLength, e);
    
                    if (checkPrint < rtbDoc.TextLength)
                    {
                        e.HasMorePages = true;
                    }
                    else
                    {
                        e.HasMorePages = false;
                    }
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    checkPrint = rtbDocPF.Print(checkPrint, rtbDocPF.TextLength, e);
    
                    if (checkPrint < rtbDocPF.TextLength)
                    {
                        e.HasMorePages = true;
                    }
                    else
                    {
                        e.HasMorePages = false;
                    }
                }
    
            }
    
    
            private void tsbtnPrintSetup_Click(object sender, EventArgs e)
            {
                this.pageSetupDialog1.ShowDialog();
            }
    
            private void tsbtnPrintView_Click(object sender, EventArgs e)
            {
                this.printPreviewDialog1.ShowDialog();
            }
    
            private void tsbtnPrint_Click(object sender, EventArgs e)
            {
                if (this.printDialog1.ShowDialog() == DialogResult.OK)
                {
                    this.printDocument1.Print();
                }
            }
    
            #endregion
    
            #region 文字编辑设置
            private void tsbtnLeft_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    if (this.rtbDoc.SelectionAlignment == HorizontalAlignment.Left)
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Center;
                    else
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Left;
                    this.rtbDoc.Focus();
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    if (this.rtbDocPF.SelectionAlignment == HorizontalAlignment.Left)
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Center;
                    else
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Left;
                    this.rtbDocPF.Focus();
                }
            }
    
            private void tsbtnCenter_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    if (this.rtbDoc.SelectionAlignment == HorizontalAlignment.Center)
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Left;
                    else
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Center;
                    this.rtbDoc.Focus();
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    if (this.rtbDocPF.SelectionAlignment == HorizontalAlignment.Center)
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Left;
                    else
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Center;
                    this.rtbDocPF.Focus();
                }
            }
    
            private void tsbtnRight_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    if (this.rtbDoc.SelectionAlignment == HorizontalAlignment.Right)
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Left;
                    else
                        this.rtbDoc.SelectionAlignment = HorizontalAlignment.Right;
                    this.rtbDoc.Focus();
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    if (this.rtbDocPF.SelectionAlignment == HorizontalAlignment.Right)
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Left;
                    else
                        this.rtbDocPF.SelectionAlignment = HorizontalAlignment.Right;
                    this.rtbDocPF.Focus();
                }
            }
    
            private void tsbtnUnderline_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    Font oldFont = this.rtbDoc.SelectionFont;
                    Font newFont;
                    if (oldFont.Underline)
                        newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Underline);
                    else
                        newFont = new Font(oldFont, oldFont.Style | FontStyle.Underline);
                    this.rtbDoc.SelectionFont = newFont;
                    this.rtbDoc.Focus();
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    Font oldFont = this.rtbDocPF.SelectionFont;
                    Font newFont;
                    if (oldFont.Underline)
                        newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Underline);
                    else
                        newFont = new Font(oldFont, oldFont.Style | FontStyle.Underline);
                    this.rtbDocPF.SelectionFont = newFont;
                    this.rtbDocPF.Focus();
                }
            }
    
            private void tsbtnBold_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    Font oldFont = this.rtbDoc.SelectionFont;
                    Font newFont;
                    if (oldFont.Bold)
                        newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
                    else
                        newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
                    this.rtbDoc.SelectionFont = newFont;
                    this.rtbDoc.Focus();
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    Font oldFont = this.rtbDocPF.SelectionFont;
                    Font newFont;
                    if (oldFont.Bold)
                        newFont = new Font(oldFont, oldFont.Style & ~FontStyle.Bold);
                    else
                        newFont = new Font(oldFont, oldFont.Style | FontStyle.Bold);
                    this.rtbDocPF.SelectionFont = newFont;
                    this.rtbDocPF.Focus();
                }
            }
    
            private void tsbtnFont_Click(object sender, EventArgs e)
            {
                if (tabControl1.SelectedTab.Text == "欠条")
                {
                    try
                    {
                        if (!(rtbDoc.SelectionFont == null))
                        {
                            fontDialog1.Font = rtbDoc.SelectionFont;
                        }
                        else
                        {
                            fontDialog1.Font = null;
                        }
                        fontDialog1.ShowApply = true;
                        if (fontDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                        {
                            rtbDoc.SelectionFont = fontDialog1.Font;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message.ToString(), "Error");
                    }
                }
                if (tabControl1.SelectedTab.Text == "批复")
                {
                    try
                    {
                        if (!(rtbDocPF.SelectionFont == null))
                        {
                            fontDialog1.Font = rtbDocPF.SelectionFont;
                        }
                        else
                        {
                            fontDialog1.Font = null;
                        }
                        fontDialog1.ShowApply = true;
                        if (fontDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                        {
                            rtbDocPF.SelectionFont = fontDialog1.Font;
                        }
                    }
                    catch (Exception ex)
                    {
                        MessageBox.Show(ex.Message.ToString(), "Error");
                    }
                }
            }
            #endregion
            #endregion
    
    
        }
    }
  • 相关阅读:
    位运算操作
    C 动态分配内存
    数据查询语言 DQL
    数据操纵语言 ,DML, 增删改
    Convert Sorted List to Binary Search Tree
    Longest Consecutive Sequence
    Binary Tree Postorder Traversal
    Triangle
    4Sum
    3Sum Closest
  • 原文地址:https://www.cnblogs.com/hbjohnsan/p/4172714.html
Copyright © 2011-2022 走看看