| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342 |
- 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 CoreFS.CA06;using Pur.Entity;
- using Pur.Entity.balanceEntity;
- using Core.Mes.Client.Comm.Control;
- using com.hnshituo.pur.vo;
- using Core.Mes.Client.Comm.Tool;
- using System.Collections;
- using Infragistics.Win;
- using Pur.Entity;
- namespace Pur.balance
- {
- public partial class FrmBlanceMana : FrmPmsBase
- {
- public FrmBlanceMana()
- {
- InitializeComponent();
- bandListValue();
- txt_CreateTimeStart.Value = ((DateTime)txt_CreateTimeStart.Value).AddMonths(-1);//将查询的截止日期加一天
- GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0], "Check");
- ultraGrid2.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
- }
- /// <summary>
- /// toolbar工具栏加载
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="ToolBarKey"></param>
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- getBalanceM();
- break;
- case "Update":
- //UpdPUR_MAT();
- break;
- case "DeleteBalanceM":
- if (ultraGrid1.ActiveRow != null)
- {
- DeleteBalanceM(ultraGrid1.ActiveRow.Cells["BALANCEID"].Value.ToString());
- }
- break;
- case "DeleteBalanceC":
- if (ultraGrid2.ActiveRow != null)
- {
- DeleteBalanceC(ultraGrid2.ActiveRow.Cells["ID"].Value.ToString());
- }
- break;
- case "DeleteBalanceCD":
- if (ultraTabControl1.SelectedTab.Key == "0")
- {
- if (ultraGrid3.ActiveRow != null)
- {
- DeleteBalanceCD(ultraGrid3.ActiveRow.Cells["ID"].Value.ToString());
- }
- }
- else if (ultraTabControl1.SelectedTab.Key == "1")
- {
- if (ultraGrid4.ActiveRow != null)
- {
- DeleteBalanceCD(ultraGrid4.ActiveRow.Cells["ID"].Value.ToString());
- }
- }
- else if (ultraTabControl1.SelectedTab.Key == "2")
- {
- if (ultraGrid5.ActiveRow != null)
- {
- DeleteBalanceCD(ultraGrid5.ActiveRow.Cells["ID"].Value.ToString());
- }
- }
- break;
- case "getBalanceRegM":
- getBalanceRegM();//生成报销登记单
- break;
- }
- }
- /// <summary>
- /// 绑定grid下拉框
- /// </summary>
- private void bandListValue()
- {
- //参考结算标准类别
- Infragistics.Win.ValueList valueList3 = new Infragistics.Win.ValueList();
- valueList3.ValueListItems.Add("1", "基准计价");
- valueList3.ValueListItems.Add("2", "成分计价");
- valueList3.ValueListItems.Add("3", "批量计价");
- //设置默认选项
- if (valueList3.ValueListItems.Count > 0)
- {
- valueList3.SelectedIndex = 0;
- }
- Infragistics.Win.ValueList valueList4 = new Infragistics.Win.ValueList();
- valueList4.ValueListItems.Add("1", "基准计价");
- valueList4.ValueListItems.Add("2", "成分计价");
- valueList4.ValueListItems.Add("3", "批量计价");
- //设置默认选项
- if (valueList4.ValueListItems.Count > 0)
- {
- valueList4.SelectedIndex = 0;
- }
- Infragistics.Win.ValueList valueList5 = new Infragistics.Win.ValueList();
- valueList5.ValueListItems.Add("1", "基准计价");
- valueList5.ValueListItems.Add("2", "成分计价");
- valueList5.ValueListItems.Add("3", "批量计价");
- //设置默认选项
- if (valueList5.ValueListItems.Count > 0)
- {
- valueList5.SelectedIndex = 0;
- }
- ultraGrid3.DisplayLayout.Bands[0].Columns["REFSTANDARDMTYPE"].ValueList = valueList3;
- ultraGrid4.DisplayLayout.Bands[0].Columns["REFSTANDARDMTYPE"].ValueList = valueList4;
- ultraGrid5.DisplayLayout.Bands[0].Columns["REFSTANDARDMTYPE"].ValueList = valueList5;
- }
- /// <summary>
- /// 获取结算单信息
- /// </summary>
- private void getBalanceM()
- {
- PurBalanceBillMEntity entity = getEnSelContion();
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBillMService", "getBalanceM", new object[] { entity });
- //按创建时间降序
- if (dt.Rows.Count != 0)
- {
- dt.DefaultView.Sort = "CREATETIME DESC";
- dt = dt.DefaultView.ToTable();
- }
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);//结算信息
- if (dt.Rows.Count < 1)
- {
- dataTable2.Rows.Clear();
- dataTable3.Rows.Clear();
- dataTable4.Rows.Clear();
- dataTable5.Rows.Clear();
- }
- }
- /// <summary>
- /// 查询结算单详表
- /// </summary>
- /// <param name="strBalanceId"></param>
- private void getBalanceC(string strBalanceId)
- {
- PurBalanceBillCEntity pbbcEntity = new PurBalanceBillCEntity();
- pbbcEntity.BalanceId = strBalanceId;
- pbbcEntity.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBillCService", "find", new object[] { pbbcEntity, 0, 0 });
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable5, true);//结算信息
- if (dt.Rows.Count < 1)
- {
- dataTable2.Rows.Clear();
- dataTable3.Rows.Clear();
- dataTable4.Rows.Clear();
- }
- }
- /// <summary>
- /// 查询结算单详表明细
- /// </summary>
- /// <param name="strBalanceId"></param>
- private void getBalanceCD(string strBalanceId, string strBalanceCId)
- {
- PurBalanceBillCDEntity pbbcdEntity = new PurBalanceBillCDEntity();
- pbbcdEntity.BalanceId = strBalanceId;
- pbbcdEntity.BalanceCId = strBalanceCId;
- pbbcdEntity.Type = "3";//数量
- pbbcdEntity.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBillCDService", "find", new object[] { pbbcdEntity, 0, 0 });
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable2, true);//数量
- pbbcdEntity.Type = "2";//单价
- dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBillCDService", "find", new object[] { pbbcdEntity, 0, 0 });
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable3, true);//单价
- pbbcdEntity.Type = "4";//金额
- dt = this.execute<DataTable>("com.hnshituo.pur.balance.service.BalanceBillCDService", "find", new object[] { pbbcdEntity, 0, 0 });
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable4, true);//金额
- }
- /// <summary>
- /// 删除结算单主表
- /// </summary>
- /// <param name="strBalanceId"></param>
- private void DeleteBalanceM(string strBalanceId)
- {
- if (MessageUtil.ShowYesNoAndQuestion("确定要删除结算单【" + strBalanceId + "】吗") == DialogResult.Yes)
- {
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceBillMService", "DeleteBalanceM", new object[] { strBalanceId, UserInfo.GetUserName(), UserInfo.GetUserID() });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("删除结算单失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("删除结算单成功!");
- getBalanceM();
- }
- }
- /// <summary>
- /// 删除结算单行表
- /// </summary>
- /// <param name="strBalanceId"></param>
- private void DeleteBalanceC(string strBalanceCId)
- {
- if (MessageUtil.ShowYesNoAndQuestion("确定要删除结算单行号【" + strBalanceCId + "】吗") == DialogResult.Yes)
- {
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceBillMService", "DeleteBalanceC", new object[] { strBalanceCId, UserInfo.GetUserName(), UserInfo.GetUserID() });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("删除结算行失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("删除结算行成功!");
- getBalanceC(ultraGrid1.ActiveRow.Cells["BALANCEID"].Value.ToString());
- }
- }
- /// <summary>
- /// 删除结算单明细说明表
- /// </summary>
- /// <param name="strBalanceId"></param>
- private void DeleteBalanceCD(string strBalanceCDId)
- {
- if (MessageUtil.ShowYesNoAndQuestion("删除结算明细说明【" + strBalanceCDId + "】吗") == DialogResult.Yes)
- {
- PurBalanceBillCDEntity pbbcd = new PurBalanceBillCDEntity();
- pbbcd.Id = strBalanceCDId;
- pbbcd.Validflag = "0";
- pbbcd.DeleteName = UserInfo.GetUserName();
- pbbcd.DeleteUserid = UserInfo.GetUserID();
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.balance.service.BalanceBillCDService", "doUpdate", new object[] { pbbcd });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("删除结算明细说明行失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("删除结算明细说明行成功!");
- getBalanceCD(ultraGrid1.ActiveRow.Cells["BALANCEID"].Value.ToString(), ultraGrid2.ActiveRow.Cells["ID"].Value.ToString());
- }
- }
- /// <summary>
- /// 获取查询条件
- /// </summary>
- /// <returns></returns>
- private PurBalanceBillMEntity getEnSelContion()
- {
- PurBalanceBillMEntity entity = new PurBalanceBillMEntity();
- if (txt_STATUS.Value != null && txt_STATUS.Value.ToString() != "")
- {
- entity.Status = txt_STATUS.Value.ToString();//状态
- }
- if (txt_BALANCE_ID.Text != "")
- {
- entity.BalanceId = txt_BALANCE_ID.Text;//结算单号
- }
- if (txt_SUPP_NAME.Text != null)
- {
- entity.SuppName = txt_SUPP_NAME.Text;//供应商名称
- }
- if (txt_CreateTimeStart.Value != null)
- {
- entity.CreateTime = (DateTime)txt_CreateTimeStart.Value;//起始时间
- }
- else
- {
- entity.CreateTime = DateTime.MinValue;
- }
- if (txt_CreateTimeEnd.Value != null)
- {
- entity.UpdateTime = (DateTime)txt_CreateTimeEnd.Value;//结束时间
- }
- else
- {
- entity.UpdateTime = DateTime.MaxValue;
- }
- entity.Validflag = "1";//状态
- return entity;
- }
- /// <summary>
- /// 结算单主表激活行事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
- {
- getBalanceC(ultraGrid1.ActiveRow.Cells["BALANCEID"].Value.ToString());
- }
- /// <summary>
- /// 结算单行表激活行事件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
- {
- getBalanceCD(ultraGrid1.ActiveRow.Cells["BALANCEID"].Value.ToString(), ultraGrid2.ActiveRow.Cells["ID"].Value.ToString());
- }
- /// <summary>
- /// 生成报销登记单
- /// </summary>
- private void getBalanceRegM()
- {
- ultraGrid1.UpdateData();
- ArrayList al_BalanceId=new ArrayList();
- ArrayList al_SUPPCODE=new ArrayList();//保存供应商,判定不能选择同一个供应商的结算单
- for (int i = 0; i < ultraGrid1.Rows.Count; i++)
- {
- if ((Boolean)ultraGrid1.Rows[i].Cells["Check"].Value)
- {
- al_BalanceId.Add(ultraGrid1.Rows[i].Cells["BALANCEID"].Value.ToString());
- if (!al_SUPPCODE.Contains(ultraGrid1.Rows[i].Cells["SUPPCODE"].Value.ToString()) && al_SUPPCODE.Count>0)
- {
- MessageUtil.ShowTips("请选择同一个供应商的结算单");
- return;
- }
- else
- {
- al_SUPPCODE.Add(ultraGrid1.Rows[i].Cells["SUPPCODE"].Value.ToString());
- }
- }
- }
- if (al_BalanceId.Count < 1)
- {
- MessageUtil.ShowTips("请勾选结算单");
- return;
- }
-
- FrmPop_BalanceRegM frm = new FrmPop_BalanceRegM(al_BalanceId, this.ob);
- frm.ShowDialog();
- }
- }
- }
|