| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540 |
- 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 Core.Mes.Client.Comm.Tool;
- using Core.Mes.Client.Comm.Control;
- using Infragistics.Win.UltraWinGrid;
- using System.Collections;
- using Pur.require_plan;
- using Pur.Entity.pur_orderEntiy;
- using com.hnshituo.pur.vo;
- using Infragistics.Win.UltraWinEditors;
- using Pur.configure;
- using Infragistics.Win;
- using Bpm;
- using Pur.Pop_upWindow;
- using Pur.Entity;
- using System.Text.RegularExpressions;
- using CoreFS.SA06;
- using Pur.Entity.ck;
- using Core.Mes.Client.Comm.Server;
- using Pur.Entity.require_planEntiy;
- namespace Pur.pur_plan
- {
- public partial class FrmPur_Plan : FrmPmsBase
- {
- double q_b = 0;//利库量的小数部分
- string QstrDataFlag = "";//是否启用数据权限,。判断当前用户登录后,能否做修改和删除操作
- public FrmPur_Plan()
- {
- InitializeComponent();
- this.IsLoadUserView = true;
- ultraGrid1.DisplayLayout.Bands[0].Override.AllowUpdate = DefaultableBoolean.False;
- GridHelper.SetExcludeColumnsActive(ultraGrid2.DisplayLayout.Bands[0], "Check");
- ultraGrid2.DisplayLayout.Bands[1].Override.AllowUpdate = DefaultableBoolean.False;
- ck_Mtime.Checked = true;
- cop_planMouthStart.Value = DateTime.Now.AddMonths(-1);
- cop_planMouthEnd.Value = DateTime.Now < DateTime.Parse(DateTime.Now.ToString("yyyy/MM/26")) ? DateTime.Now.AddMonths(1) : DateTime.Now.AddMonths(2);
- ultraExpandableGroupBox1.Expanded = false;
- }
- //菜单按钮事件
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- get_PUR_PLAN_M();
- break;
- case "Update":
- UpdPUR_PLAN_M();
- break;
- case "Delete":
- DelPUR_PLAN_M();
- break;
- case "getTaskList":
- getTaskList();
- break;
- case "Report":
- Report();
- break;
- case "CancelReport":
- CancelReport();
- break;
- case "Process":
- Process();
- break;
- case "UltraGridToExcel":
- UltraGridToExcel();
- break;
- }
- }
- private void FrmPur_Plan_Load(object sender, EventArgs e)
- {
- DataTable dt1 = new DataTable();
- dt1.Columns.AddRange(new DataColumn[] { new DataColumn("Code"), new DataColumn("Desc") });
- dt1.Rows.Add("", "全部");
- dt1.Rows.Add("1", "紧急");
- dt1.Rows.Add("2", "常规");
- ultraComboEditor1.DataSource = dt1;
- ultraComboEditor1.DisplayMember = "Desc";
- ultraComboEditor1.ValueMember = "Code";
- SetComboItemHeight(ultraComboEditor1);//设置comboxEditer高度
- ultraComboEditor1.SelectedIndex = 0;
- DataTable dt2 = new DataTable();
- dt2.Columns.AddRange(new DataColumn[] { new DataColumn("Code"), new DataColumn("Desc") });
- dt2.Rows.Add("", "全部");
- dt2.Rows.Add("1", "待提报");
- dt2.Rows.Add("2", "审批中");
- dt2.Rows.Add("3", "已审批");
- dt2.Rows.Add("4", "审批不通过");
- ultraComboEditor2.DataSource = dt2;
- ultraComboEditor2.DisplayMember = "Desc";
- ultraComboEditor2.ValueMember = "Code";
- SetComboItemHeight(ultraComboEditor2);//设置comboxEditer高度
- ultraComboEditor2.SelectedIndex = 0;
- ck_isAlldepart.Checked = true;
- ultraExpandableGroupBox2.Expanded = false;
- getUltcmbBindData();
- }
- /// <summary>
- /// 界面加载函数
- /// </summary>
- /// <param name="e"></param>
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- ultraGrid1.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- ultraGrid2.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- ultraGrid2.DisplayLayout.Bands[1].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- }
- /// <summary>
- /// 导出Excel
- /// </summary>
- private void UltraGridToExcel()
- {
- try
- {
- //获取导出的采购计划行表
- ultraGrid2.DisplayLayout.Bands[0].Columns["Check"].Hidden = true;
- ultraGrid2.DisplayLayout.Bands[1].Hidden = true;
- ArrayList alUltraGrid = new ArrayList();
- alUltraGrid.Add(ultraGrid1);
- alUltraGrid.Add(ultraGrid2);
- ArrayList alSheeft = new ArrayList();
- alSheeft.Add("采购单主表");
- alSheeft.Add("采购单行表");
- if (ultraGrid1.Rows.Count > 0)
- {
- GridHelper.ulGridToExcel(alUltraGrid, alSheeft, "采购单");//导出excel
- }
- }
- catch (Exception e)
- {
- MessageUtil.ShowTips("导出失败" + e.Message);
- }
- finally
- {
- ultraGrid2.DisplayLayout.Bands[0].Columns["Check"].Hidden = false;//显示复选框
- ultraGrid2.DisplayLayout.Bands[1].Hidden = false;
- }
- }
- /// <summary>
- /// 创建合同
- /// </summary>
- //private void addorder()
- //{
- // UltraGridRow uge = ultraGrid1.ActiveRow;
- // UltraGridRow ug2e = ultraGrid2.ActiveRow;
- // if (ug2e == null)
- // {
- // if (uge == null)
- // {
- // MessageUtil.ShowTips("没有选择采购计划");
- // return;
- // }
- // else
- // {
- // MessageUtil.ShowTips("采购计划:" + uge.Cells["mrId"].Value.ToString() + "没有行信息不能生成合同!");
- // return;
- // }
- // }
- // if (txt_PLAN_TYPE.Value == null)
- // {
- // MessageUtil.ShowTips("计划类型不能为空");
- // return;
- // }
- // if (MessageUtil.ShowYesNoAndTips("创建后采购计划将转成合同草稿,是否继续?") == DialogResult.No)
- // {
- // return;
- // }
- // try
- // {
- // ArrayList list = new ArrayList();
- // EntityPurPlanM Ppm = new EntityPurPlanM();
- // Ppm.MrId = uge.Cells["mrId"].Value.ToString();
- // DataTable dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "find", new object[] { Ppm, 0, 0 });
- // int Id = this.execute<int>("com.hnshituo.pur.order.service.OrderMService", "find_Max", new object[] { });
- // OrderM Odm = new OrderM();
- // //Id++;
- // //string str = Id.ToString();
- // //while (str.Length < 4)
- // //{
- // // str = "0" + str;
- // //}
- // //Odm.OrderId = DateTime.Now.ToString("yyyyMM") + txt_PLAN_TYPE.Value.ToString() + str;
- // Odm.Status = "0";
- // Odm.Validflag = "1";
- // Odm.CreateName = CoreUserInfo.UserInfo.GetUserName();
- // Odm.CreateUserid = CoreUserInfo.UserInfo.GetUserID();
- // Odm.CreateTime = DateTime.Now;
- // EntityPurPlanD Ppd = new EntityPurPlanD();
- // Ppd.MrId = uge.Cells["mrId"].Value.ToString();
- // Ppd.Validflag = "1";
- // DataTable dt1 = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanDService", "find", new object[] { Ppd, 0, 0 });
- // for (int i = 0; i < dt1.Rows.Count; i++)
- // {
- // //string lst = Odm.OrderId;
- // //int IdLin = this.execute<int>("com.hnshituo.pur.order.service.OrderCService", "find_MaxC", new object[] { lst });
- // OrderC odC = new OrderC();
- // //IdLin = IdLin + i + 1;
- // //string strId = IdLin.ToString();
- // //while (strId.Length < 4)
- // //{
- // // strId = "0" + strId;
- // //}
- // //odC.OrderId = Odm.OrderId;
- // //odC.OrderLineSqe = lst + "-" + strId;
- // odC.ItemCode = dt1.Rows[i]["ItemCode"].ToString();
- // odC.BuyerDeptDesc = dt1.Rows[i]["BuyerDeptDesc"].ToString();
- // odC.ItemName = dt1.Rows[i]["ItemName"].ToString();
- // odC.PurLineId = dt1.Rows[i]["MRLINEID"].ToString();
- // //odC.ItemSpec = dt1.Rows[i]["ItemSpec"].ToString();
- // //odC.ItemDesc = dt1.Rows[i]["ItemDesc"].ToString();
- // odC.ItemUom = dt1.Rows[i]["ItemUom"].ToString();
- // //odC.ItemUomConefficient = 1;
- // odC.ItemUomConefficient = Convert.ToDouble(dt1.Rows[i]["ItemUomConefficient"].ToString());
- // //odC.ItemUseUom = dt1.Rows[i]["ItemUseUom"].ToString();
- // odC.WeightUnit = dt1.Rows[i]["WeightUnit"].ToString();
- // odC.BuyerDeptCode = dt1.Rows[i]["BuyerDeptCode"].ToString();
- // odC.BuyerUnitCode = dt1.Rows[i]["BuyerUnitCode"].ToString();
- // odC.BuyerUnitDesc = dt1.Rows[i]["BuyerUnitDesc"].ToString();
- // odC.BuyerName = dt1.Rows[i]["BuyerName"].ToString();
- // odC.Qty = Convert.ToDouble(dt1.Rows[i]["Qty"].ToString());
- // odC.Validflag = "1";
- // odC.ItemAttr = dt1.Rows[i]["ItemAttr"].ToString();
- // odC.ItemAttrId = dt1.Rows[i]["ItemAttrId"].ToString();
- // odC.ItemStandardsCode = dt1.Rows[i]["ItemStandardsCode"].ToString();
- // odC.ItemStandardsId = dt1.Rows[i]["ItemStandardsId"].ToString();
- // odC.ItemUnique = dt1.Rows[i]["ItemUnique"].ToString();
- // odC.ItemUomId = dt1.Rows[i]["ItemUomId"].ToString();
- // odC.CreateName = CoreUserInfo.UserInfo.GetUserName();
- // odC.CreateUserid = CoreUserInfo.UserInfo.GetUserID();
- // odC.CreateTime = DateTime.Now;
- // list.Add(odC);
- // }
- // CoreResult Result1 = this.execute<CoreResult>("com.hnshituo.pur.order.service.OrderCService", "insert_order", new object[] { list, Odm });
- // if (Result1.Resultcode == 0)
- // {
- // MessageUtil.ShowTips("创建成功,已保存为合同草稿:" + Odm.OrderId);
- // }
- // else
- // {
- // MessageBox.Show("新增记录失败:" + Result1.Resultmsg);
- // return;
- // }
- // }
- // catch (Exception e)
- // {
- // MessageUtil.ShowError("合同草稿创建失败!" + e);
- // }
- //}
- /// <summary>
- /// 查询采购计划主表
- /// </summary>
- /// <param name="PurPlanMEntity"></param>
- public void get_PUR_PLAN_M()
- {
- dataSet1.Clear();
- record.Clear();
- message.Clear();
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity = getEnSelContion();
- PurPlanMEntity.ValidDataPurviewIds = this.ValidDataPurviewIds;
- PurPlanMEntity.OperatorUserId = UserInfo.GetUserID();
- PurPlanMEntity.BpmUserId = UserInfo.GetUserID();
- //判断当前拥有此页面功能的角色是否启用数据权限,//0未启用
- string QstrDataFlag = this.execute<string>("com.hnshituo.pur.utils.service.UtilsService", "getRoleDataFlag", new object[] { UserInfo.GetUserID(), "Pur.pur_plan.FrmPur_Plan" });
- if (QstrDataFlag == "0")//0未启用
- {
- if (ck_isAlldepart.Checked)
- {
- PurPlanMEntity.CreateUserid = this.UserInfo.GetUserID();
- }
- }
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "getPurPlanM", new object[] { PurPlanMEntity });
- foreach (DataRow row in dt.Rows)
- {
- row["mrPeriodEnd"] = Convert.ToDateTime(row["mrPeriodEnd"]).ToString("yyyy/MM");
- }
- //按创建时间降序
- if (dt.Rows.Count > 0)
- {
- dt.DefaultView.Sort = "CREATETIME DESC";
- dt = dt.DefaultView.ToTable();
- }
- GridHelper.CopyDataToDatatable(ref dt, ref dataTable1, true);//绑定物料分类表
- ultraGrid1.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- }
- /// <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 });
-
- 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() }))
- if (!dataTable2.Rows.Contains(new object[] { dt_require.Rows[i]["BUYERDEPTCODE"].ToString() }))
- {
- dt_require.Rows.RemoveAt(i);
- }
- else { i++; }
- }
- GridHelper.CopyDataToDatatable(ref dt_require, ref dataTable3, true);//绑定采购计划行子表
- //采购计划行标记颜色
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- //导入进来的采购计划,设置已生成任务单量=采购计划量
- //if (ultraGrid1.ActiveRow.Cells["PLANTYPE"].Value.ToString() == "1")
- //{
- // ultraGrid2.Rows[i].Cells["taskQty"].Value = ultraGrid2.Rows[i].Cells["Qty"].Value;
- //}
- //double breleaseqty1 = double.Parse(ultraGrid2.Rows[i].Cells["releaseqty1"].Value.ToString());//非预采脱单
- //double breleaseqty3 = double.Parse(ultraGrid2.Rows[i].Cells["releaseqty3"].Value.ToString());//挂单
- //if (double.Parse(ultraGrid2.Rows[i].Cells["taskQty"].Value.ToString()) - breleaseqty1 + breleaseqty3 >= double.Parse(ultraGrid2.Rows[i].Cells["Qty"].Value.ToString()))
- if (ultraGrid1.ActiveRow.Cells["PLANTYPE"].Value.ToString() == "1")
- {
- ultraGrid2.Rows[i].Cells["pickQty"].Value = 0;
- }
- if (double.Parse(ultraGrid2.Rows[i].Cells["pickQty"].Value.ToString())<=0)
- {
- ultraGrid2.Rows[i].Appearance.ForeColor = Color.Red;// System.Drawing.Color.FromArgb(200, 128, 0);
- }
- else
- {
- ultraGrid2.Rows[i].Appearance.ForeColor = Color.Black;
- }
- }
- ultraGrid2.DisplayLayout.Bands[0].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- ultraGrid2.DisplayLayout.Bands[1].PerformAutoResizeColumns(true, PerformAutoSizeType.AllRowsInBand);
- }
- /// <summary>
- /// 生成任务单
- /// </summary>
- public void getTaskList()
- {
- if (ultraGrid1.ActiveRow == null)
- {
- MessageUtil.ShowTips("为选择采购计划信息");
- return;
- }
- if (getPlanStatusNum() != "3")
- {
- MessageUtil.ShowTips("所选采购计划不是已审批状态,不能生成任务单");
- return;
- }
- ultraGrid2.UpdateData();
- DataTable dt = dataTable2.Clone();
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- if ((Boolean)ultraGrid2.Rows[i].Cells["Check"].Value)
- {
- for (int j = 0; j < dataTable2.Rows.Count; j++)
- {
- if (ultraGrid2.Rows[i].Cells["MRLINEID"].Value.ToString() == dataTable2.Rows[j]["MRLINEID"].ToString())
- {
- DataRow dr = dataTable2.Rows[j];
- //double breleaseqty1 = double.Parse(ultraGrid2.Rows[i].Cells["releaseqty1"].Value.ToString());//非预采脱单
- //double breleaseqty3 = double.Parse(ultraGrid2.Rows[i].Cells["releaseqty3"].Value.ToString());//挂单
- if (double.Parse(dr["pickQty"].ToString())<=0)
- {
- MessageUtil.ShowTips("采购单行号【" + dr["MRLINEID"].ToString() + "】“剩余可生成任务单量需大于0!");
- return;
- }
- dt.Rows.Add(dr.ItemArray);
- break;
- }
- }
- }
- }
- if (dt.Rows.Count < 1)
- {
- MessageUtil.ShowTips("请至少选择一条采购计划行");
- return;
- }
- string[] str = new string[5];//运输条件
- str[0] = cmb_DELIVERY_CONDITION.Value == null ? null : cmb_DELIVERY_CONDITION.Value.ToString();//运输条件
- str[1] = ultcmb_ELIVERY_TYPE.Value == null ? null : ultcmb_ELIVERY_TYPE.Value.ToString();//运输方式
- str[2] = cmb_RECEIVE_TYPE.Value == null ? null : cmb_RECEIVE_TYPE.Value.ToString();//接收方式
- //str[3] = cmb_PAYMENT_CODE.Value== null ? null : cmb_PAYMENT_CODE.Value.ToString();//付款方式
- //str[4] = cmb_PACKAGE_TYPE.Value == null ? null : cmb_PACKAGE_TYPE.Value.ToString();//包装方式
- frm_PurTaskM frm = new frm_PurTaskM(dt, ultraGrid1.ActiveRow.Cells["REQORGNAME"].Value.ToString(), str, this.ob);
- frm.ShowDialog();
- EntityPurPlanD PurPlanDEntity1 = new EntityPurPlanD();
- PurPlanDEntity1.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- PurPlanDEntity1.Validflag = "1";
- dataTable3.Rows.Clear();
- dataTable2.Clear();
- get_PUR_PLAN_D(PurPlanDEntity1);//刷新采购计划详表
- }
- /// <summary>
- /// 修改
- /// </summary>
- private void UpdPUR_PLAN_M()
- {
- if (ultraTabControl1.SelectedTab.Key == "0")//修改采购计划主表
- {
- if (ultraGrid1.ActiveRow != null)
- {
- if (getPlanCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能修改");
- return;
- }
- string strPlanStatus = getPlanStatusNum();//采购计划主表状态
- if (strPlanStatus != "1" && strPlanStatus != "4")
- {
- MessageUtil.ShowTips("采购单主表状态为" + getPlanStatus() + ",不能修改采购计划");
- return;
- }
- String strMrId=ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- if (String.IsNullOrEmpty(strMrId))
- {
- MessageUtil.ShowTips("计划号为空!");
- return;
- }
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity.DeliveryCondition = cmb_DELIVERY_CONDITION.Value == null ? null : cmb_DELIVERY_CONDITION.Value.ToString();//运输条件
- PurPlanMEntity.DeliveryType = ultcmb_ELIVERY_TYPE.Value == null ? null : ultcmb_ELIVERY_TYPE.Value.ToString();//运输方式
- PurPlanMEntity.ReceiveType = cmb_RECEIVE_TYPE.Value == null ? null : cmb_RECEIVE_TYPE.Value.ToString();//接收方式
- PurPlanMEntity.UpdateName = UserInfo.GetUserName();
- PurPlanMEntity.UpdateTime = System.DateTime.Now;
- PurPlanMEntity.UpdateUserid = UserInfo.GetUserID();
- PurPlanMEntity.MrId = strMrId;
- if (MessageUtil.ShowYesNoAndQuestion("是否确定修改?") == DialogResult.No)
- {
- return;
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "doUpdate", new object[] { PurPlanMEntity });//添加操作
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("修改失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("修改成功!");
- get_PUR_PLAN_M();//刷新采购计划主表
- ConfigureClassCommon.doActiveSelRow(ultraGrid1, "MRID", PurPlanMEntity.MrId);//激活当前行
- }
- else
- {
- MessageUtil.ShowTips("请选择采购计划主表信息");
- return;
- }
- }
- else if (ultraTabControl1.SelectedTab.Key == "1")//修改采购计划详表
- {
- if (ultraGrid2.ActiveRow != null && !ultraGrid2.ActiveRow.HasParent())
- {
- if (getPlanLineCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能修改");
- return;
- }
- string strPlanStatus = getPlanStatusNum();//采购计划主表状态
- if (strPlanStatus != "1" && strPlanStatus != "4")
- {
- MessageUtil.ShowTips("采购单主表状态为" + getPlanStatus() + ",不能修改采购计划");
- return;
- }
- String strMrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- String strMrLineId=ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString(); ;//采购单行号
- if (String.IsNullOrEmpty(strMrId))
- {
- MessageUtil.ShowTips("采购计划号为空!");
- return;
- }
- if (String.IsNullOrEmpty(strMrLineId))
- {
- MessageUtil.ShowTips("采购计划行号为空!");
- return;
- }
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity.MrId = strMrId;
- PurPlanDEntity.Validflag = "1";
- PurPlanDEntity.MrLineId = strMrLineId;
- PurPlanDEntity.Remark = txt_REMARK.Text;//备注
- PurPlanDEntity.BugPrice = double.Parse(txt_BUG_PRICE.Text);//计划价
- PurPlanDEntity.PackageType = cmb_PACKAGE_TYPE.Value == null ? null : cmb_PACKAGE_TYPE.Value.ToString();//包装方式
- PurPlanDEntity.PaymentCode = cmb_PAYMENT_CODE.Value == null ? null : cmb_PAYMENT_CODE.Value.ToString();//付款方式
- double bQTY_YC = 0;//输入预采数量
- if (txt_QTY_YC.Value != null)
- {
- double.TryParse(txt_QTY_YC.Value.ToString(), out bQTY_YC);
- }
- PurPlanDEntity.QtyYc = bQTY_YC;//预采
- if (ultDt_ASK_DELIVER_DATE.Value != null)
- PurPlanDEntity.AskDeliverDate = (DateTime)ultDt_ASK_DELIVER_DATE.Value;
- PurPlanDEntity.UpdateName = UserInfo.GetUserName();
- PurPlanDEntity.UpdateTime = System.DateTime.Now;
- PurPlanDEntity.UpdateUserid = UserInfo.GetUserID();
- if (MessageUtil.ShowYesNoAndQuestion("确定修改?") == DialogResult.No)
- {
- return;
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanDService", "doUpdate_d", new object[] { PurPlanDEntity });//添加操作
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("修改失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("修改成功!");
- EntityPurPlanD PurPlanDEntity1 = new EntityPurPlanD();
- PurPlanDEntity1.MrId = strMrId;
- PurPlanDEntity1.Validflag = "1";
- get_PUR_PLAN_M();//刷新采购计划主表
- ConfigureClassCommon.doActiveSelRow(ultraGrid1, "MRID", PurPlanDEntity.MrId);//激活当前行
- ConfigureClassCommon.doActiveSelRow(ultraGrid2, "MRLINEID", PurPlanDEntity.MrLineId);//激活当前行
- }
- else
- {
- MessageUtil.ShowTips("请选择采购计划行表信息");
- return;
- }
- }
- }
- /// <summary>
- /// 删除
- /// </summary>
- private void DelPUR_PLAN_M()
- {
- //if (ultraTabControl1.SelectedTab.Key == "0")//修改采购计划主表
- //{
- if (ultraGrid1.ActiveRow != null)
- {
- if (getPlanCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能撤销");
- return;
- }
- string strPlanStatus = getPlanStatusNum();//采购计划主表状态
- if (strPlanStatus != "1" && strPlanStatus != "4")
- {
- MessageUtil.ShowTips("采购单主表状态为" + getPlanStatus() + ",不能撤销采购计划");
- return;
- }
- //string resStr = "";
- //if (ultraGrid2.ActiveRow != null)
- //{
- // resStr = this.execute<string>("com.hnshituo.pur.purplan.service.PurPlanDService", "MrLineIdIsUsing", new object[] { ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() });//删除判断
- // if (resStr != "")
- // {
- // MessageUtil.ShowTips("采购单行号在" + resStr + "中使用,不能撤销");
- // return;
- // }
- //}
- if (MessageUtil.ShowYesNoAndQuestion("确定撤销采购计划【" + ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() + "】? 若撤销,该采购计划下的脱单挂单利库将同步取消。") == DialogResult.No)
- {
- return;
- }
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity.Validflag = "0";
- //PurPlanMEntity.Status = "0";
- PurPlanMEntity.DeleteName = UserInfo.GetUserName();
- PurPlanMEntity.DeleteTime = System.DateTime.Now;
- PurPlanMEntity.DeleteUserid = UserInfo.GetUserID();
- PurPlanMEntity.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "del_PlanM", new object[] { PurPlanMEntity });//删除操作
- //CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "cancelPurPlan", new object[] { PurPlanMEntity });//添加操作
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("撤销失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("撤销成功!");
- EntityPurPlanM PurPlanMEntity1 = new EntityPurPlanM();
- PurPlanMEntity1.Validflag = "1";
- get_PUR_PLAN_M();//刷新采购计划主表
- }
- else
- {
- MessageUtil.ShowTips("请选择采购计划主表!");
- }
- //}
- //else if (ultraTabControl1.SelectedTab.Key == "1")//删除采购计划详表
- //{
- // ultraGrid2.UpdateData();
- // if (ultraGrid1.ActiveRow == null)
- // { return; }
- // string strPlanStatus = getPlanStatus();//采购计划主表状态
- // if (strPlanStatus != "待提报")
- // {
- // MessageUtil.ShowTips("采购单主表状态为" + strPlanStatus + ",不能撤销采购计划");
- // return;
- // }
- // if (getPlanLineCreateName() != this.UserInfo.GetUserName())
- // {
- // MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能删除");
- // return;
- // }
- // if (ultraGrid2.ActiveRow != null)
- // {
- // string resStr = "";
- // resStr = this.execute<string>("com.hnshituo.pur.purplan.service.PurPlanDService", "MrLineIdIsUsing", new object[] { ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() });//删除判断
- // if (resStr != "")
- // {
- // MessageUtil.ShowTips("采购单行号在" + resStr + "中使用,不能删除");
- // return;
- // }
- // resStr = this.execute<string>("com.hnshituo.pur.purplan.service.PurPlanDService", "MrLineIdIsBenefit", new object[] { ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() });//删除判断
- // if (resStr != "")
- // {
- // if (MessageUtil.ShowYesNoAndQuestion(resStr + ",如果删除此采购单行号,此前的利库或利计划操作将取消!\n确定要删除吗") == DialogResult.No)
- // {
- // return;
- // }
- // }
- // else if (MessageUtil.ShowYesNoAndQuestion("确定删除采购单行号【" + ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() + "】?") == DialogResult.No)
- // {
- // return;
- // }
- // ArrayList all = new ArrayList();
- // for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- // {
- // if ((Boolean)ultraGrid2.Rows[i].Cells["Check"].Value)
- // {
- // EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- // PurPlanDEntity.Validflag = "0";
- // PurPlanDEntity.DeleteName = UserInfo.GetUserName();
- // PurPlanDEntity.DeleteTime = System.DateTime.Now;
- // PurPlanDEntity.MrLineId = ultraGrid2.Rows[i].Cells["MRLINEID"].Value.ToString(); //采购单行号
- // all.Add(PurPlanDEntity);
- // }
- // }
- // if (all.Count < 1)//删除当前激活行
- // {
- // EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- // PurPlanDEntity.Validflag = "0";
- // PurPlanDEntity.DeleteName = UserInfo.GetUserName();
- // PurPlanDEntity.DeleteUserid = UserInfo.GetUserID();
- // PurPlanDEntity.DeleteTime = System.DateTime.Now;
- // PurPlanDEntity.MrLineId = ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString(); //采购单行号
- // all.Add(PurPlanDEntity);
- // }
- // CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurRequirePurPlanRService", "del_updata", new object[] { all });//添加操作
- // if (crt.Resultcode != 0)
- // {
- // MessageUtil.ShowTips("删除失败 " + crt.Resultmsg);
- // return;
- // }
- // MessageUtil.ShowTips("删除成功!");
- // EntityPurPlanD PurPlanDEntity1 = new EntityPurPlanD();
- // PurPlanDEntity1.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- // PurPlanDEntity1.Validflag = "1";
- // get_PUR_PLAN_D(PurPlanDEntity1);//刷新采购计划详表
- // }
- //}
- }
- /// <summary>
- /// 查看流程详情
- /// </summary>
- private void Process()
- {
- UltraGridRow uge = ultraGrid1.ActiveRow;
- if (uge == null)
- {
- MessageUtil.ShowWarning("请选择一条记录");
- return;
- }
- if (getPlanStatusNum() == "1")
- {
- MessageUtil.ShowTips("提报后才能查看流程");
- return;
- }
- string mrId = uge.Cells["MRId"].Value.ToString();
- ProcInstDetail detail = new ProcInstDetail(BpmFlowConstants.PROCDEF_PUR_PLAN_AUDIT, mrId);
- detail.ShowDialog();
- }
- /// <summary>
- /// 判断数据库中是否存在相同的列
- /// </summary>
- /// <param name="strJavaPackName"></param>
- /// <param name="o"></param>
- /// <returns>true存在</returns>
- public bool isExsitRow(string strJavaPackName, object o)
- {
- DataTable dt = this.execute<DataTable>(strJavaPackName, "find", new object[] { o, 0, 0 });
- if (dt != null && dt.Rows.Count > 0)//存在相同的行
- {
- return true;
- }
- return false;
- }
- /// <summary>
- /// 单击数据列表赋值数据给控件
- /// </summary>
- private void getControlBoxValue(object sender, object entity)
- {
- //获取要情况文本框的父容器
- Control ctrBox = null;
- if (sender.Equals(ultraGrid1))
- {
- ctrBox = ultraGroupBox6;
- }
- else if (sender.Equals(ultraGrid2))
- {
- ctrBox = ultraTabPageControl2;
- }
- //清空控件
- foreach (Control ctr in ctrBox.Controls)
- {
- if (ctr is Label)
- { continue; }
- if (ctr is UltraCheckEditor)
- {
- UltraCheckEditor ultcmb = (UltraCheckEditor)ctr;
- ultcmb.Checked = false;
- }
- ctr.Text = null;
- }
- if (sender.Equals(ultraGrid1))
- {
- EntityPurPlanM PurPlanMEntity = (EntityPurPlanM)entity;
- cmb_DELIVERY_CONDITION.Value = PurPlanMEntity.DeliveryCondition;//运输条件
- ultcmb_ELIVERY_TYPE.Value = PurPlanMEntity.DeliveryType;//运输方式
- cmb_RECEIVE_TYPE.Value = PurPlanMEntity.ReceiveType;//接收方式
- }
- else if (sender.Equals(ultraGrid2))
- {
- EntityPurPlanD PurPlanDEntity = (EntityPurPlanD)entity;
- txt_REMARK.Text = PurPlanDEntity.Remark == null ? null : PurPlanDEntity.Remark.ToString();//备注
- cmb_PACKAGE_TYPE.Value = PurPlanDEntity.PackageType;//包装方式
- cmb_PAYMENT_CODE.Value = PurPlanDEntity.PaymentCode;//付款方式
- txt_BUG_PRICE.Text = PurPlanDEntity.BugPrice == null ? null : PurPlanDEntity.BugPrice.ToString();//计划价
- txt_QTY_YC.Value = PurPlanDEntity.QtyYc;//预采
- ultDt_ASK_DELIVER_DATE.Value = ultraGrid2.ActiveRow.Cells["ASKDELIVERDATE"].Value;
- }
- }
- /// <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();
- record.Clear();
- String strMrid= ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString().Trim();
- if (String.IsNullOrEmpty(strMrid))
- {
- MessageUtil.ShowTips("采购计划号为空");
- return;
- }
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity.MrId = strMrid;
- PurPlanDEntity.Validflag = "1";
- get_PUR_PLAN_D(PurPlanDEntity);//查询采购计划详表
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity = this.execute<EntityPurPlanM>("com.hnshituo.pur.purplan.service.PurPlanMService", "findById", new object[] { ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() });
- getControlBoxValue(sender, PurPlanMEntity);
- getBindItemMiddleClass();//绑定物料分类筛选下拉类表
- //加载采购计划评审意见
- 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>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
- {
- if (!ultraGrid2.ActiveRow.HasParent())
- {
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity = this.execute<EntityPurPlanD>("com.hnshituo.pur.purplan.service.PurPlanDService", "findById", new object[] { ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() });
- getControlBoxValue(sender, PurPlanDEntity);//给控件赋值
- txt_QTY_YC.Enabled = true;
- //查询脱挂单记录
- record.Clear();
- RequireReleaseInstockqty release = new RequireReleaseInstockqty();
- release.Validflag = "1";
- release.PurLineId = ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString();
- DataTable dt1 = this.execute<DataTable>("com.hnshituo.pur.requireplan.service.RequireReleaseInstockqtyService", "doQuery_List", new object[] { release });
- GridHelper.CopyDataToDatatable(dt1, dataTable8, true);
- GridHelper.RefreshAndAutoSize(ultraGrid9);
- }
- else
- {
- txt_QTY_YC.Enabled = false;
- }
- }
- /// <summary>
- /// 单击采购计划主表
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_ClickCell(object sender, Infragistics.Win.UltraWinGrid.ClickCellEventArgs e)
- {
- this.ultraTabControl1.SelectedTab = ultraTabPageControl1.Tab;
- }
- /// <summary>
- /// 单击采购计划详表
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_ClickCell(object sender, Infragistics.Win.UltraWinGrid.ClickCellEventArgs e)
- {
- this.ultraTabControl1.SelectedTab = ultraTabPageControl2.Tab;
- }
- /// <summary>
- /// 获取查询条件
- /// </summary>
- /// <returns></returns>
- private EntityPurPlanM getEnSelContion()
- {
- EntityPurPlanM entity = new EntityPurPlanM();
- if (ultraTextEditor5.Text.Trim() != "")
- {
- entity.MrId = ultraTextEditor5.Text.ToString().Trim();
- }
- if (ultraComboEditor1.Value != null && ultraComboEditor1.Value.ToString() != "")
- {
- entity.UrgencyType = ultraComboEditor1.Value.ToString().Trim();
- }
- if (ultraComboEditor2.Value != null && ultraComboEditor2.Value.ToString() != "")
- {
- entity.Status = ultraComboEditor2.Value.ToString().Trim();
- }
- if (ck_Mtime.Checked == true)
- {
- if (cop_planMouthStart.Text != "")
- {
- DateTime Start1 = DateTime.Parse(Convert.ToDateTime(cop_planMouthStart.Value).ToString("yyyy/MM"));
- entity.MrPeriodStart = Start1;
- }
- if (cop_planMouthEnd.Text != "")
- {
- DateTime End1 = DateTime.Parse(Convert.ToDateTime(cop_planMouthEnd.Value).ToString("yyyy/MM"));
- entity.MrPeriodEnd = End1;
- }
- }
- //entity.DeleteName = "1";//判断是否需要查待编的,1不显示,0显示
- entity.Validflag = "1";
- return entity;
- }
- /// <summary>
- /// 提报
- /// </summary>
- private void Report()
- {
- string strStatus = getPlanStatusNum();
- if (strStatus == "1" || strStatus == "4")
- {
- if (getPlanCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能提报");
- return;
- }
- String strTxt = "物料:";
- int ii = 0;
- foreach (UltraGridRow ugr in ultraGrid2.Rows)
- {
- double b = 0;
- double.TryParse(ugr.Cells["BUGPRICE"].Value.ToString(), out b);
- if (b == 0)
- {
- strTxt = strTxt + "," + ugr.Cells["ItemName"].Value.ToString();
- ii = ii + 1;
- }
- }
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- PurPlanMEntity.Status = "2";
- PurPlanMEntity.UpdateUserid = UserInfo.GetUserID();
- PurPlanMEntity.UpdateName = UserInfo.GetUserName();
- if (ii > 0)
- {
- if (MessageUtil.ShowYesNoAndQuestion(strTxt+"计划价格为0,确认提报?") != DialogResult.Yes)
- {
- return;
- }
- }
- else
- {
- if (MessageUtil.ShowYesNoAndQuestion("确认提报?") != DialogResult.Yes)
- {
- return;
- }
- }
- CoreResult re = setRequire(PurPlanMEntity);
- //CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "submit", new object[] { PurPlanMEntity });//提报
- //this.execute("com.hnshituo.pur.purplan.service.PurPlanMService", "update", new object[] { PurPlanMEntity });//添加操作
- if (re.Resultcode != 0)
- {
- MessageUtil.ShowTips("提报失败:" + re.Resultmsg);
- return;
- }
- else
- {
- MessageUtil.ShowTips("提报成功!");
- get_PUR_PLAN_M();//刷新采购计划主表
- comm.doActiveSelRow(ultraGrid1, "MRID", PurPlanMEntity.MrId);
- }
- }
- else
- {
- MessageUtil.ShowTips("采购单不是“待提报”状态,不能提报");
- }
- }
- /// <summary>
- /// 取消提报
- /// </summary>
- private void CancelReport()
- {
- if (getPlanCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能取消提报");
- return;
- }
- string strStatus = getPlanStatusNum();
- //if (strStatus == "3")
- //{
- //MessageUtil.ShowTips("采购单已审批,不能取消提报");
- //return;
- //}
- if (strStatus != "1")
- {
- string strTips = "确定取消提报?";
- if (strStatus == "3")
- {
- strTips = "采购计划【" + ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() + "】已经审批通过了,取消了后需要重新审批,确定取消提报?";
- }
- if (DialogResult.No.Equals(MessageUtil.ShowYesNoAndQuestion(strTips)))
- {
- return;
- }
- EntityPurPlanM PurPlanMEntity = new EntityPurPlanM();
- PurPlanMEntity.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- PurPlanMEntity.Status = "1";
- PurPlanMEntity.UpdateUserid = UserInfo.GetUserID();
- PurPlanMEntity.UpdateName = UserInfo.GetUserName();
- CoreResult re = setRequireD(PurPlanMEntity);
- //CoreResult re = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "submit", new object[] { PurPlanMEntity });//添加操作
- if (re.Resultcode != 0)
- {
- MessageUtil.ShowTips("取消失败:" + re.Resultmsg);
- return;
- }
- else
- {
- MessageUtil.ShowTips("取消成功!");
- get_PUR_PLAN_M();//刷新采购计划主表
- }
- }
- else
- {
- MessageUtil.ShowTips("采购单已是“待提报”状态,无需取消");
- }
- }
- /// <summary>
- /// 利库操作
- /// </summary>
- private void StorageBenefit()
- {
- if (ultraGrid1.ActiveRow != null)
- {
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- for (int j = 0; j < ultraGrid2.Rows.Count; j++)
- {
- if (i != j)
- {
- if (ultraGrid2.Rows[i].Cells["ITEMCODE"].Value.ToString() == ultraGrid2.Rows[j].Cells["ITEMCODE"].Value.ToString())
- { MessageUtil.ShowTips("选择采购单下的采购计划行不能有重复的物料编码!"); return; }
- }
- }
- }
- FrmStorageBenefit frm = new FrmStorageBenefit(this.ob, ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString());
- frm.ShowDialog();
- }
- else
- {
- MessageUtil.ShowTips("请选择采购单号!");
- }
- }
- /// <summary>
- /// 取消利计划和利库操作
- /// </summary>
- private void CancelPurPlanBenefit()
- {
- string strPlanStatus = getPlanStatusNum();//采购计划主表状态
- if (strPlanStatus != "1" && strPlanStatus != "4")
- {
- MessageUtil.ShowTips("采购单主表状态为" + getPlanStatus() + ",不能取消利库");
- return;
- }
- //string resStr = this.execute<string>("com.hnshituo.pur.purplan.service.PurPlanDService", "MrIdIsBenefit", new object[] { ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() });//删除判断
- //if (resStr != "")
- //{
- if (ultraGrid2.ActiveRow != null)
- {
- if (MessageUtil.ShowYesNoAndQuestion("确定要取消采购单行号【" + ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() + "】利库吗") == DialogResult.No)
- {
- return;
- }
- //}
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity.MrLineId = ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString();
- PurPlanDEntity.Validflag = "0";
- PurPlanDEntity.UpdateName = UserInfo.GetUserName();
- PurPlanDEntity.UpdateTime = System.DateTime.Now;
- PurPlanDEntity.UpdateUserid = UserInfo.GetUserID();
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurRequirePurPlanRService", "CancelPurPlanBenefit", new object[] { PurPlanDEntity });//添加操作
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("取消失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("取消成功!");
- EntityPurPlanD PurPlanDEntity1 = new EntityPurPlanD();
- PurPlanDEntity1.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- PurPlanDEntity1.Validflag = "1";
- get_PUR_PLAN_D(PurPlanDEntity1);//查询采购计划详表
- ConfigureClassCommon.doActiveSelRow(ultraGrid2, "MRLINEID", PurPlanDEntity.MrLineId);//激活当前行
- }
- }
- /// <summary>
- /// 利计划操作
- /// </summary>
- private void PlanBenefit()
- {
- if (ultraGrid1.ActiveRow != null)
- {
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- for (int j = 0; j < ultraGrid2.Rows.Count; j++)
- {
- if (i != j)
- {
- if (ultraGrid2.Rows[i].Cells["ITEMCODE"].Value.ToString() == ultraGrid2.Rows[j].Cells["ITEMCODE"].Value.ToString())
- { MessageUtil.ShowTips("选择采购单下的采购计划行不能有重复的物料编码!"); return; }
- }
- }
- }
- frm_PlanBenefit frm = new frm_PlanBenefit(this.ob, ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString());
- frm.ShowDialog();
- }
- else
- {
- MessageUtil.ShowTips("请选择采购单号!");
- }
- }
- /// <summary>
- /// 点击切换编辑区的tab页
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_Click(object sender, EventArgs e)
- {
- ultraTabControl1.SelectedTab = ultraTabPageControl2.Tab;
- }
- /// <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;
- }
- }
- }
- }
- /// <summary>
- /// 获取采购单主表状态
- /// </summary>
- /// <returns></returns>
- public string getPlanStatus()
- {
- string strTaskStatus = "";
- EntityPurPlanM M_PurPlanM = new EntityPurPlanM();
- M_PurPlanM.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- M_PurPlanM.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.purplan.service.PurPlanMService", "getPurPlanM", new object[] { M_PurPlanM });
- if (dt.Rows.Count > 0)
- {
- strTaskStatus = dt.Rows[0]["STATUS"].ToString();
- }
- return strTaskStatus;
- }
- /// <summary>
- /// 获取采购单主表状态
- /// </summary>
- /// <returns></returns>
- public string getPlanStatusNum()
- {
- string strTaskStatus = "";
- EntityPurPlanM M_PurPlanM = new EntityPurPlanM();
- M_PurPlanM = this.execute<EntityPurPlanM>("com.hnshituo.pur.purplan.service.PurPlanMService", "findById", new object[] { ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() });
- if (M_PurPlanM != null)
- {
- strTaskStatus = M_PurPlanM.Status.ToString();
- }
- return strTaskStatus;
- }
- /// <summary>
- /// 获取采购单主表创建人
- /// </summary>
- /// <returns></returns>
- public string getPlanCreateName()
- {
- string strCreateName = "";
- EntityPurPlanM M_PurPlanM = new EntityPurPlanM();
- M_PurPlanM = this.execute<EntityPurPlanM>("com.hnshituo.pur.purplan.service.PurPlanMService", "findById", new object[] { ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString() });
- if (M_PurPlanM != null)
- {
- strCreateName = M_PurPlanM.CreateName.ToString();
- }
- return strCreateName;
- }
- /// <summary>
- /// 获取采购单行表创建人
- /// </summary>
- /// <returns></returns>
- public string getPlanLineCreateName()
- {
- string strCreateName = "";
- EntityPurPlanD M_PurPlanD = new EntityPurPlanD();
- M_PurPlanD = this.execute<EntityPurPlanD>("com.hnshituo.pur.purplan.service.PurPlanDService", "findById", new object[] { ultraGrid2.ActiveRow.Cells["MRLINEID"].Value.ToString() });
- if (M_PurPlanD != null)
- {
- strCreateName = M_PurPlanD.CreateName.ToString();
- }
- return strCreateName;
- }
- /// <summary>
- /// 显示采购计划激活行的物料
- /// </summary>
- private void showItemUgridRow(UltraGrid ugr)
- {
- for (int i = 0; i < ugr.Rows.Count; i++)
- {
- if (ugr.Rows[i].Cells["ITEMCODE"].Value.ToString() != ultraGrid2.ActiveRow.Cells["ITEMCODE"].Value.ToString() || ugr.Rows[i].Cells["WEIGHTUNIT"].Value.ToString().Trim() != ultraGrid2.ActiveRow.Cells["WEIGHTUNIT"].Value.ToString().Trim())
- {
- ugr.Rows[i].Hidden = true;//隐藏
- }
- else
- {
- ugr.Rows[i].Hidden = false;
- }
- }
- }
- /// <summary>
- /// 绑定下拉列表的数据
- /// </summary>
- private void getUltcmbBindData()
- {
- //接收方式
- DataTable dt = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1101" }, this.ob);
- removeNotValiflagData(dt);
- getUltcmbBindValueList(dt, cmb_RECEIVE_TYPE);
- //运输条件
- DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1105" }, this.ob);
- removeNotValiflagData(dt1);
- getUltcmbBindValueList(dt1, cmb_DELIVERY_CONDITION);
- //运输方式
- DataTable dt2 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1102" }, this.ob);
- removeNotValiflagData(dt2);
- getUltcmbBindValueList(dt2, ultcmb_ELIVERY_TYPE);
- //付款方式
- DataTable dt3 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1104" }, this.ob);
- removeNotValiflagData(dt3);
- getUltcmbBindValueList(dt3, cmb_PAYMENT_CODE);
- ultraGrid2.DisplayLayout.Bands[0].Columns["PAYMENTCODE"].EditorComponent = cmb_PAYMENT_CODE;
- //包装方式
- DataTable dt4 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1107" }, this.ob);
- removeNotValiflagData(dt4);
- getUltcmbBindValueList(dt4, cmb_PACKAGE_TYPE);
- ultraGrid2.DisplayLayout.Bands[0].Columns["PACKAGETYPE"].EditorComponent = cmb_PACKAGE_TYPE;
- }
- /// <summary>
- /// 移除无效数据
- /// </summary>
- /// <param name="dt"></param>
- private void removeNotValiflagData(DataTable dt)
- {
- for (int i = 0; i < dt.Rows.Count; )
- {
- if (dt.Rows[i]["VALIDFLAG"].ToString() == "0")
- {
- dt.Rows.RemoveAt(i);
- }
- else
- {
- i++;
- }
- }
- }
- /// <summary>
- /// 绑定所有的下拉列表的数据
- /// </summary>
- private void getUltcmbBindValueList(DataTable dt, UltraComboEditor ultcmb)
- {
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- ValueListItem vlItem = new ValueListItem(dt.Rows[i]["BASECODE"].ToString().Trim(), dt.Rows[i]["BASENAME"].ToString().Trim());
- ultcmb.Items.Add(vlItem);
- }
- }
- /// <summary>
- /// 提报补充预采需求
- /// </summary>
- private CoreResult setRequire(EntityPurPlanM ppm)
- {
- ArrayList alrem = new ArrayList();
- ArrayList alReqD = new ArrayList();
- ArrayList alReqR = new ArrayList();
- ArrayList alrpr = new ArrayList();
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- RequirePlanM rem = new RequirePlanM();
- RequirePlanD ReqD = new RequirePlanD();
- ReqPurPlanR ReqR = new ReqPurPlanR();
- RequireReceive rpr = new RequireReceive();
- double bQTYYC = 0;
- double.TryParse(ultraGrid2.Rows[i].Cells["QTYYC"].Value.ToString(), out bQTYYC);
- if (bQTYYC > 0)
- {
- //生成需求单号
- string strYcMrId = this.execute<string>("com.hnshituo.pur.utils.service.UtilsService", "genMrId", new object[] { 1 });
- rem.CreateName = UserInfo.GetUserName();
- rem.CreateUserid = UserInfo.GetUserID();
- rem.CreateTime = DateTime.Now;
- rem.Status = "3";
- //ReqM.ReqOrgId = txt_REQ_ORG_ID.Text;
- //ReqM.ReqOrgName = txt_REQORGNAME.Text;
- rem.MrPeriodEnd = Convert.ToDateTime(ultraGrid1.ActiveRow.Cells["MRPERIODEND"].Value.ToString()).Date;
- //rem.MrPeriodStart = Convert.ToDateTime(txt_MRPERIODSTART.Text).Date;
- rem.UrgencyType = "1";
- rem.ReqOrgName = UserInfo.GetDepartment();//申请者机构名称
- rem.ReqOrgId = UserInfo.GetDeptid();//申请者机构ID
- rem.Validflag = "1";
- rem.RequireType = "122103";//生产性物料预采,系统自动生成,RPA160700003-002 RPA160700003-001
- rem.MrId = strYcMrId;
- EntityPurPlanD ppd = new EntityPurPlanD();
- ppd = this.execute<EntityPurPlanD>("com.hnshituo.pur.purplan.service.PurPlanDService", "findById", new object[] { ultraGrid2.Rows[i].Cells["MrLineId"].Value.ToString() });//添加操作
- ReqD = EntityHelper.CopyEntity<RequirePlanD>(ppd);
- ReqD.MrLineId = strYcMrId + "-001";
- ReqD.MrId = strYcMrId;
- ReqD.Remark = "由预采补充需求计划行信息";
- ReqD.BuyerDeptCode = "";
- ReqD.BuyerDeptDesc = "";
- ReqD.BuyerUnitCode = "";
- ReqD.BuyerUnitDesc = "";
- ReqD.Validflag = "1";
- ReqD.FlagGeneratedPurPlan = "4";
- ReqD.Qty = bQTYYC;
- ReqD.QtyPur = bQTYYC;
- ReqD.BudgetAmt = bQTYYC * (ReqD.BugPrice == null ? 0 : ReqD.BugPrice);
- ReqD.CreateName = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserName();
- ReqD.CreateUserid = CoreFS.SA06.CoreUserInfo.UserInfo.GetUserID();
- ReqD.CreateTime = DateTime.Now;
- ReqD.FlagGeneratedPurPlan = "1";
- //2016年2月28新增leitao
- ReqD.DeliveryLocationFlag = "0";
- ReqD.DeliveryLocation = "";
- ReqD.DeliveryLocationCode = "";
- ReqD.AuditFlag = "1";
- ReqD.AuditMsg = "默认审批通过";
- //插入关系表
- ReqR.PurLineId = ppd.MrLineId;
- ReqR.CreateTime = DateTime.Now;
- ReqR.RequireLineId = ReqD.MrLineId;
- ReqR.ID = ReqD.MrLineId + ppd.MrLineId;
- rpr = EntityHelper.CopyEntity<RequireReceive>(ReqD);
- rpr.PurLineId = ppd.MrLineId;
- rpr.Id = ReqD.MrLineId + ppd.MrLineId;
- rpr.Status = "2";
- rpr.LastDeliveryDate = ppd.AskDeliverDate;
- rpr.LjhTime = System.DateTime.Now;
- rpr.Purtype = "3";
- rpr.OriQty = bQTYYC;
- rpr.OriQtyPur = bQTYYC;
- rpr.Qty = bQTYYC;
- rpr.QtyPur = bQTYYC;
- alrem.Add(rem);
- alReqD.Add(ReqD);
- alReqR.Add(ReqR);
- alrpr.Add(rpr);
- }
- else//不用补预采需求
- {
- }
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "submit", new object[] { alrem, alReqD, alReqR, alrpr, ppm });//添加操作
- return crt;
- }
- /// <summary>
- /// 撤销提报,删除预采需求
- /// </summary>
- /// <param name="ppm"></param>
- /// <returns></returns>
- private CoreResult setRequireD(EntityPurPlanM ppm)
- {
- ArrayList alrem = new ArrayList();
- ArrayList alReqD = new ArrayList();
- ArrayList alReqR = new ArrayList();
- ArrayList alrpr = new ArrayList();
- for (int i = 0; i < ultraGrid2.Rows.Count; i++)
- {
- double bQTYYC = 0;
- double.TryParse(ultraGrid2.Rows[i].Cells["QTYYC"].Value.ToString(), out bQTYYC);
- if (bQTYYC > 0)
- {
- if (ultraGrid2.Rows[i].HasChild())
- {
- for (int j = 0; j < ultraGrid2.Rows[i].ChildBands[0].Rows.Count; j++)
- {
- if (ultraGrid2.Rows[i].ChildBands[0].Rows[j].Cells["Remark"].Value.ToString() == "由预采补充需求计划行信息")
- {
- RequirePlanM rem = new RequirePlanM();
- RequirePlanD ReqD = new RequirePlanD();
- ReqPurPlanR ReqR = new ReqPurPlanR();
- RequireReceive rpr = new RequireReceive();
- ReqD.MrLineId = ultraGrid2.Rows[i].ChildBands[0].Rows[j].Cells["MrLineId"].Value.ToString();
- ReqD.MrId = ultraGrid2.Rows[i].Cells["MrLineId"].Value.ToString();
- alrem.Add(rem);
- alReqD.Add(ReqD);
- alReqR.Add(ReqR);
- alrpr.Add(rpr);
- //alReqD.Add(ReqD);
- break;
- }
- }
- }
- }
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanMService", "submit", new object[] { alrem, alReqD, alReqR, alrpr, ppm });//添加操作
- return crt;
- }
- //绑定查询的物料分类
- private void getBindItemMiddleClass()
- {
- DataTable dt= comm.getDtGroupBy_reDt(dataTable2, "basename");
- comm.setUltraComboEditorBind(txt_ItemMiddleClass, dt, "basename", "basecode", "全部", "");
- }
- private void ck_Mtime_CheckedChanged(object sender, EventArgs e)
- {
- cop_planMouthStart.Enabled = ck_Mtime.Checked;
- cop_planMouthEnd.Enabled = ck_Mtime.Checked;
- }
- #region 行编辑区
- /// <summary>
- /// 按照物料为别过滤物料
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btn_selectD_Click(object sender, EventArgs e)
- {
- if (txt_ItemMiddleClass.Value == null)
- {
- return;
- }
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity.MrId = ultraGrid1.ActiveRow.Cells["MRID"].Value.ToString();
- PurPlanDEntity.Validflag = "1";
- PurPlanDEntity.ItemCode = txt_ItemMiddleClass.Value.ToString();
- get_PUR_PLAN_D(PurPlanDEntity);//查询采购计划详表
- }
- private void btn_deleteD_Click(object sender, EventArgs e)
- {
- if (ultraGrid1.ActiveRow != null)
- {
- if (getPlanCreateName() != this.UserInfo.GetUserName())
- {
- MessageUtil.ShowTips("此采购计划不是当前登录用户创建,不能撤销");
- return;
- }
- string strPlanStatus = getPlanStatusNum();//采购计划主表状态
- if (strPlanStatus != "1" && strPlanStatus != "4")
- {
- MessageUtil.ShowTips("采购单主表状态为" + getPlanStatus() + ",不能编辑采购计划");
- return;
- }
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择采购计划行");
- return;
- }
- String strPurLineId = ultraGrid2.ActiveRow.GetCellValue("MRLINEID").ToString().Trim();
- if (String.IsNullOrEmpty(strPurLineId))
- {
- MessageUtil.ShowTips("请选择的采购计划行号为空");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("确定撤销采购计划行【" + strPurLineId + "】? 若撤销,该采购计划行下的脱单挂单利库将同步取消。") == DialogResult.No)
- {
- return;
- }
- EntityPurPlanD PurPlanDEntity = new EntityPurPlanD();
- PurPlanDEntity.Validflag = "0";
- //PurPlanMEntity.Status = "0";
- PurPlanDEntity.DeleteName = UserInfo.GetUserName();
- PurPlanDEntity.DeleteTime = System.DateTime.Now;
- PurPlanDEntity.DeleteUserid = UserInfo.GetUserID();
- PurPlanDEntity.MrLineId = strPurLineId;
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.purplan.service.PurPlanDService", "doDelete_d", new object[] { PurPlanDEntity });//删除操作
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("撤销失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("撤销成功!");
- EntityPurPlanM PurPlanMEntity1 = new EntityPurPlanM();
- PurPlanMEntity1.Validflag = "1";
- get_PUR_PLAN_M();//刷新采购计划主表
- }
- else
- {
- MessageUtil.ShowTips("请选择采购计划主表!");
- }
- }
- private void btn_addD_Click(object sender, EventArgs e)
- {
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择采购计划行");
- return;
- }
- String strPurLineId = ultraGrid2.ActiveRow.GetCellValue("MRLINEID").ToString().Trim();
- if (String.IsNullOrEmpty(strPurLineId))
- {
- MessageUtil.ShowTips("请选择的采购计划行号为空");
- return;
- }
- }
- #endregion
- 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;
- }
- }
- }
- }
|