| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570 |
- 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 Pur.Entity.configureEntity;
- using CoreFS.CA06;
- using Pur.Entity;
- using Core.Mes.Client.Comm.Tool;
- using Core.Mes.Client.Comm.Control;
- using Infragistics.Win.UltraWinGrid;
- using System.Collections;
- using Pur.require_plan;
- using Pur.Pop_upWindow;
- using Infragistics.Win;
- using com.hnshituo.pur.vo;
- using com.hnshituo.bpm.req.vo;
- using Bpm;
- using Infragistics.Win.UltraWinEditors;
- using System.Text.RegularExpressions;
- namespace Pur.pur_plan
- {
- public partial class frmPurPlanExamineNew : FrmPmsBase
-
- {
- public frmPurPlanExamineNew()
- {
- InitializeComponent();
- this.IsLoadUserView = true;
- GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0],new string[]{"CHK"});
- ultraGrid2.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
- ultraGrid4.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
- ultraGrid4.DisplayLayout.Bands[1].Override.AllowUpdate = DefaultableBoolean.False;
- }
- private void frmPurPlanExamine_Shown(object sender, EventArgs e)
- {
- this.ToolBarItemEnable(this, "Query", true);
- this.ToolBarItemEnable(this, "Examine", true);
- this.ToolBarItemEnable(this, "show_Information", true);
- }
- private void frmPurPlanExamineNew_Load(object sender, EventArgs e)
- {
- //年份默认查询
- DataTable dt = new DataTable();
- dt.Columns.Add("YEAR", Type.GetType("System.Int32"));
- for (int i = 2015; i <= 2060; i++)
- dt.Rows.Add(new object[] { i });
- txt_year.DataSource = dt;
- txt_year.ValueMember = "YEAR";
- txt_year.DisplayMember = "YEAR";
- txt_year.Value = DateTime.Now.Year;
- //明细默认查询
- txt_Status11.SelectedIndex = 1;
-
- }
- //菜单按钮事件
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- getSumAuditPlanM_s();
- break;
- case "show_Information":
- Process();
- break;
- case "Exit":
- Exit();
- break;
- case "ExamineSubmit":
- ExamineSubmit();
- break;
- case "Export":
- GridHelper.ulGridToExcel(this.ultraGrid4, "当月报表");
- break;
- }
- }
- /// <summary>
- /// 查询采购计划主表
- /// </summary>
- /// <param name="PurPlanMEntity"></param>
- public void get_PUR_PLAN_M()
- {
- try
- {
- this.Cursor = Cursors.WaitCursor;
- dataTable1.Clear();
- dataTable2.Clear();
- dataSet4.Clear();
- EntityPurPlanM entity = new EntityPurPlanM();
- entity.BpmUserId = UserInfo.GetUserID();
- entity.ValidDataPurviewIds = this.ValidDataPurviewIds;
- if (ultraGrid6.ActiveRow == null)
- {
- return;
- }
- entity.MrPeriodEnd = Convert.ToDateTime(ultraGrid6.ActiveRow.Cells["mrperiodend"].Value);
- entity.BpmProcDefKey = BpmFlowConstants.PROCDEF_PUR_PLAN_AUDIT;
- entity.Validflag = "1";
- DataTable dt = new DataTable();
- if (txt_Status11.SelectedIndex == -1)
- {
- MessageUtil.ShowTips("请选择数据范围进行查询");
- }
- if (txt_Status11.Value.ToString().Trim() == "wait")
- {
- dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "find_audit_status", new object[] { entity });
- }
- else if (txt_Status11.Value.ToString().Trim() == "did")
- {
- dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "find_audited_status", new object[] { entity });
- }
- else
- {
- dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "getPurPlanM", new object[] { entity });
- }
- foreach (DataRow row in dt.Rows)
- {
- row["MRPERIODEND"] = Convert.ToDateTime(row["MRPERIODEND"]).ToString("yyyy/MM");
- }
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);
- GridHelper.RefreshAndAutoSize(ultraGrid1);
- //查询采购行信息
- DataTable dt3 = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanDService", "getPurPlanDByMonth", new object[] { entity });
- if (dt3.Rows.Count > 0)
- {
- //查询汇总头信息
- DataTable dt2 = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "getPurPlanMByMonth", new object[] { entity });
- if (dt2 != null && dt2.Rows.Count > 0)
- {
- //将汇总头信息按下列排序
- DataTable dt_Copy = dt2.Clone();
- dt_Copy.PrimaryKey = new DataColumn[] { dt_Copy.Columns["arcMidName"] };
- for (int i = 0; i < dt2.Rows.Count; i++)
- {
- switch (dt2.Rows[i]["arcMidName"].ToString())
- {
- case "钢铁料":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "铁合金":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "电极":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "添加剂":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "矿石燃料":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "耐火材料":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- case "辅助材料":
- dt_Copy.ImportRow(dt2.Rows[i]);
- break;
- }
- }
- for (int i = 0; i < dt2.Rows.Count; i++)
- {
- if (dt2.Rows[i]["arcMidName"].ToString().Trim() != "")
- {
- if (!dt_Copy.Rows.Contains(dt2.Rows[i]["arcMidName"].ToString()))
- {
- dt_Copy.ImportRow(dt2.Rows[i]);
- }
- }
- }
- dt2 = dt_Copy.Copy();
- dt2.PrimaryKey = null;
- }
- dt2.Columns.Add("qtyPreInv", Type.GetType("System.String"));
- dt2.Columns.Add("qtyPreInvAmt", Type.GetType("System.String"));
- dt2.Columns.Add("qtyEndInv", Type.GetType("System.String"));
- dt2.Columns.Add("qtyEndInvAmt", Type.GetType("System.String"));
- DataTable dt3set = dt3.Copy();
- //去掉重复物料
- for (int j = dt3set.Rows.Count - 1; j >= 0; j--)
- {
- String strItemUnique = dt3set.Rows[j]["itemUnique"].ToString().Trim();
- DataRow[] rowss = dt3.Select("itemUnique='" + strItemUnique + "'");
- if (rowss.Count() >= 2)
- {
- dt3set.Rows.RemoveAt(j);
- }
- }
- foreach (DataRow rows in dt2.Rows)
- {
- String strArcCode = rows["arcMidCode"].ToString().Trim();
- DataRow[] rowdd = dt3set.Select("arcMidCode='" + strArcCode + "'");
- double DbqtyPreInv = 0;
- double DbqtyPreInvAmt = 0;
- double DbqtyEndInv = 0;
- double DbqtyEndInvAmt = 0;
- foreach (DataRow roww in rowdd)
- {
- DbqtyPreInv = DbqtyPreInv + Convert.ToDouble(roww["qtyPreInv"]);
- DbqtyPreInvAmt = DbqtyPreInvAmt + Convert.ToDouble(roww["qtyPreInvAmt"]);
- DbqtyEndInv = DbqtyEndInv + Convert.ToDouble(roww["qtyEndInv"]);
- DbqtyEndInvAmt = DbqtyEndInvAmt + Convert.ToDouble(roww["qtyEndInvAmt"]);
- }
- rows["qtyPreInv"] = DbqtyPreInv;
- rows["qtyPreInvAmt"] = DbqtyPreInvAmt;
- rows["qtyEndInv"] = DbqtyEndInv;
- rows["qtyEndInvAmt"] = DbqtyEndInvAmt;
- }
- GridHelper.CopyDataToDatatable(ref dt2, ref dataTable9, true);
- GridHelper.CopyDataToDatatable(ref dt3, ref dataTable6, true);
- GridHelper.RefreshAndAutoSize(ultraGrid4);
- //查询需求行子行信息
- //DataTable dt_requires = this.execute<DataTable>("com.hnshituo.pur.requireplan.service.RequirePlanDService", "getSumAuditRequirePlanD", new object[] { PurPlanMEntity });
- //GridHelper.CopyDataToDatatable(ref dt_requires, ref dataTable8, true);
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("数据处理失败:"+ex.Message);
- }
- finally
- {
- this.Cursor = Cursors.Default;
- }
- }
- /// <summary>
- /// 查询采购计划详表
- /// </summary>
- /// <param name="PurPlanMEntity"></param>
- public void get_PUR_PLAN_D(EntityPurPlanD PurPlanDEntity)
- {
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanDService", "getPlanD", new object[] { PurPlanDEntity, 0, 0 });
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable2, true);//绑定采购计划行表
- //DataTable dt_require = this.execute<DataTable>("com.hnshituo.pur.requireplan.service.RequirePlanDService", "getRequireByPlanD_ids", new object[] { ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() });
- ////删除父表中没有的行
- //for (int i = 0; i < dt_require.Rows.Count; )
- //{
- // if (!dataTable2.Rows.Contains(new object[] { dt_require.Rows[i]["BUYERDEPTCODE"].ToString(), dt_require.Rows[i]["ITEMUNIQUE"].ToString() }))
- // {
- // dt_require.Rows.RemoveAt(i);
- // }
- // else { i++; }
- //}
- //GridHelper.CopyDataToDatatable(ref dt_require, ref dataTable3, true);//绑定采购计划行子表
- }
- /// <summary>
- /// 激活采购计划主表行(未审批)
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_AfterRowActivate(object sender, EventArgs e)
- {
- //dataTable3.Rows.Clear();
- dataTable2.Clear();
- message.Clear();
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- if (ultraGrid1.ActiveRow == null)
- {
- return;
- }
-
- String strMrId= ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString().Trim();
- PurPlanDEntity.MrId = strMrId;
- if (PurPlanDEntity.MrId == null || PurPlanDEntity.MrId == "")
- {
- return;
- }
- PurPlanDEntity.Validflag = "1";
- get_PUR_PLAN_D(PurPlanDEntity);//查询采购计划详表
- getOrderReview(strMrId);
- }
- /// <summary>
- /// 查询评审意见
- /// </summary>
- /// <param name="strMrid"></param>
- private void getOrderReview(string strMrid)
- {
- DataTable dt11 = this.execute<DataTable>("com.hnshituo.pur.order.service.OrderMService", "getReviewMsg", new object[] { strMrid });
- GridHelper.CopyDataToDatatable(dt11, dataTable7, true);
- GridHelper.RefreshAndAutoSize(ultraGrid3);
- }
- /// <summary>
- /// 流程详情查看
- /// </summary>
- private void Process()
- {
- UltraGridRow uge = ultraGrid1.ActiveRow;
- if (uge == null)
- {
- MessageUtil.ShowWarning("请选择一条审批记录");
- return;
- }
- string mrId = uge.Cells["MRId"].Value.ToString();
- ProcInstDetail detail = new ProcInstDetail(BpmFlowConstants.PROCDEF_PUR_PLAN_AUDIT, mrId);
- detail.ShowDialog();
- }
- /// <summary>
- /// 查询所有计划月份的采购计划汇总信息
- /// </summary>
- private void getSumAuditPlanM_s()
- {
- try
- {
- this.Cursor = Cursors.WaitCursor;
- EntityPurPlanM entity = new EntityPurPlanM();
- entity.BpmUserId = UserInfo.GetUserID();
- entity.ValidDataPurviewIds = this.ValidDataPurviewIds;
- if (txt_year.SelectedIndex != -1)
- {
- entity.DeleteName = txt_year.Value.ToString();
- }
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "getSumAuditPlanM_s", new object[] { entity });
- foreach (DataRow row in dt.Rows)
- {
- row["MRPERIODEND"] = Convert.ToDateTime(row["MRPERIODEND"]).ToString("yyyy/MM");
- double bBUDGETAMT = 0;
- double.TryParse(row["BUDGETAMT"].ToString(), out bBUDGETAMT);
- row["BUDGETAMT"] = Math.Round(bBUDGETAMT * 1.13, 2);//统计含税金额
-
- }
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable5, true);
- ultraGrid6.UpdateData();
- foreach (UltraGridRow ugr in ultraGrid6.Rows)
- {
- if (Convert.ToDouble(ugr.Cells["validflag"].Value) > 0)//还有未审批
- {
- ugr.Appearance.ForeColor = Color.Red;
- }
- else//已审批
- {
- ugr.Appearance.ForeColor = Color.Black;
- }
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("加载数据失败:"+ex.Message);
- }
- finally
- {
- this.Cursor = Cursors.Default;
- }
- GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid6, new UltraGridColumn[] { });
- }
- /// <summary>
- /// 设置UltraComboEditor中的中文和非中文统一高度。
- /// </summary>
- /// <param name="cmb"></param>
- public static void SetComboItemHeight(UltraComboEditor cmb)
- {
- foreach (ValueListItem item in cmb.Items)
- {
- if (item.DisplayText != null)
- {
- if (Regex.IsMatch(item.DisplayText, @"[\u4e00-\u9fa5]+"))
- {
- item.Appearance.FontData.SizeInPoints = 9.0F;
- }
- else
- {
- item.Appearance.FontData.SizeInPoints = 10.5F;
- }
- }
- }
- }
- private void ultraTabControl1_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
- {
- //dataTable3.Clear();
- //dataTable2.Rows.Clear();//清空采购计划行
- //if (ultraTabControl1.SelectedTab == ultraTabControl1.Tabs[0])
- //{
- // this.ToolBarItemEnable(this, "Query", true);
- // this.ToolBarItemEnable(this, "Examine", true);
- // this.ToolBarItemEnable(this, "show_Information", true);
- // if (ultraGrid1.ActiveRow == null)
- // {
- // return;
- // }
- // UltraGridRow uge = ultraGrid1.ActiveRow;
- // String YY = uge.Cells["mrId"].Value.ToString();
- // EntityPurPlanD RqPM = new EntityPurPlanD();
- // RqPM.MrId = YY;
- // RqPM.Validflag = "1";
- // get_PUR_PLAN_D(RqPM);//查询采购计划详表
- //}
- //if (ultraTabControl1.SelectedTab == ultraTabControl1.Tabs[1])
- //{
- // this.ToolBarItemEnable(this, "Query", true);
- // this.ToolBarItemEnable(this, "Examine", false);
- // this.ToolBarItemEnable(this, "show_Information", true);
- // if (ultraGrid3.ActiveRow == null)
- // {
- // return;
- // }
- // UltraGridRow uge = ultraGrid3.ActiveRow;
- // String YY = uge.Cells["mrId"].Value.ToString();
- // EntityPurPlanD RqPM = new EntityPurPlanD();
- // RqPM.MrId = YY;
- // RqPM.Validflag = "1";
- // get_PUR_PLAN_D(RqPM);//查询采购计划详表
- //}
- }
- /// <summary>
- /// 退回
- /// </summary>
- private void Exit()
- {
- this.Close();
- }
- /// <summary>
- /// 提报
- /// </summary>
- private void ExamineSubmit()
- {
- CoreResult rt = new CoreResult();
- //当月报表模式
- if (ultraTabControl1.SelectedTab == ultraTabControl1.Tabs[0])
- {
- frmExamineShow Fex = new frmExamineShow();
- Fex.ShowDialog();
- ReqCompleteTask req = new ReqCompleteTask();
- req.OperatorUserId = UserInfo.GetUserID();
- EntityPurPlanM entity = new EntityPurPlanM();
- entity.BpmUserId = UserInfo.GetUserID();
- entity.ValidDataPurviewIds = this.ValidDataPurviewIds;
- entity.MrPeriodEnd = Convert.ToDateTime(ultraGrid6.ActiveRow.Cells["mrperiodend"].Value);
- entity.BpmProcDefKey = BpmFlowConstants.PROCDEF_PUR_PLAN_AUDIT;
- entity.Validflag = "1";
- if (Fex.Status == "2")//通过
- {
- req.AuditData = true;
- req.AuditMessage = Fex.ExamineMessage;
- rt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "doAudit_all", new object[] { req, entity });
- if (rt.Resultcode == 0)
- {
- MessageUtil.ShowTips("操作成功");
- getSumAuditPlanM_s();
- }
- else
- {
- MessageUtil.ShowTips("操作失败," + rt.Resultmsg);
- return;
- }
- }
- else if (Fex.Status == "1")
- {
- req.AuditData = false;
- req.AuditMessage = Fex.ExamineMessage;
- rt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "doAudit_all", new object[] { req, entity });
- if (rt.Resultcode == 0)
- {
- MessageUtil.ShowTips("操作成功");
- getSumAuditPlanM_s();
- }
- else
- {
- MessageUtil.ShowTips("操作失败");
- return;
- }
- }
- }
- else if (ultraTabControl1.SelectedTab == ultraTabControl1.Tabs[1])
- {
- ultraGrid1.UpdateData();
- ArrayList list = new ArrayList();
- foreach (UltraGridRow row in ultraGrid1.Rows)
- {
- if (Convert.ToBoolean(row.GetCellValue("CHK")) == true)
- {
- EntityPurPlanM pm = new EntityPurPlanM();
- pm.MrId = row.GetCellValue("MRID").ToString().Trim();
- pm.ReqOrgId = row.GetCellValue("BpmTaskId").ToString().Trim();
- pm.DeleteUserid = UserInfo.GetUserID();//审批人ID
- list.Add(pm);
- }
- }
- if (list.Count <= 0)
- {
- MessageUtil.ShowTips("请选择需要审批的计划!");
- return;
- }
- //UltraGridRow uge = ultraGrid1.ActiveRow;
- // ArrayList al = setUserPlan();
- frmExamineShowNew frm = new frmExamineShowNew(list, this.ob,"pur");
- frm.ShowDialog();
- if (frm.tips == "1")
- {
- getSumAuditPlanM_s();
- }
- }
- else
- {
- MessageUtil.ShowTips("未知参数");
- }
- }
- /// <summary>
- /// 选择计划月,查询相应的月份数据
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid6_AfterRowActivate(object sender, EventArgs e)
- {
- get_PUR_PLAN_M();
- }
- //控制选择CHK
- private void txt_Status_ValueChanged(object sender, EventArgs e)
- {
- get_PUR_PLAN_M();
- foreach(UltraGridRow row in ultraGrid1.Rows)
- {
- row.Cells["CHK"].Value=false;
- }
- if (txt_Status11.SelectedIndex == 1)//待审批
- {
- ultraGrid1.DisplayLayout.Bands[0].Columns["CHK"].Hidden = false;
- }
- else
- {
- ultraGrid1.DisplayLayout.Bands[0].Columns["CHK"].Hidden = true;
- }
- }
- private void ultraTabControl1_SelectedTabChanged_1(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
- {
- if (ultraTabControl1.SelectedTab == ultraTabControl1.Tabs[0])
- {
- this.ToolBarItemEnable(this, "show_Information", false);
- }
- else
- {
- this.ToolBarItemEnable(this, "show_Information", true);
- }
- }
- private void ultraGrid1_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- if (e.Row.Cells["status"].Value.ToString().StartsWith("审批不通过"))
- {
- e.Row.Appearance.ForeColor = Color.Red;
- }
- else
- {
- e.Row.Appearance.ForeColor = Color.Black;
- }
- }
- }
- }
|