| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132 |
- using System;
- using System.Collections.Generic;
- using System.Data;
- using System.Drawing;
- using System.Windows.Forms;
- using CoreFS.CA06;
- using Core.Mes.Client.Comm.Tool;
- using com.steering.pss.sale.orderchange.entity;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Control;
- using Infragistics.Win.UltraWinGrid;
- using System.Collections;
- using Core.Mes.Client.Comm.Format;
- using Core.StlMes.Client.SaleOrder.ReviewForm;
- using Core.StlMes.Client.SaleOrder.SaleOrderChange;
- namespace Core.StlMes.Client.SaleOrder
- {
- public partial class FormOrderChangeManage : FrmBase
- {
- public FormOrderChangeManage()
- {
- InitializeComponent();
- this.IsLoadUserView = true;
- }
- public FormOrderChangeManage(OpeBase ob)
- {
- InitializeComponent();
- this.IsLoadUserView = true;
- this.ob = ob;
- }
- Color color = new Color();
- private void FormOrderChangeManage_Load(object sender, EventArgs e)
- {
- color = gdOrderLine.DisplayLayout.Override.RowSelectorAppearance.BackColor;
- if (CustomInfo == "3" || CustomInfo == "3-120504") //变更单管理界面
- {
- cmbChangeStatus.Value = "L";
- }
- else if (CustomInfo == "2" || CustomInfo == "2-120504")
- {
- cmbChangeStatus.Items.Remove(0);
- cmbChangeStatus.Items.Remove(2);
- cmbChangeStatus.Value = "W";
- chkChangeStatus.Checked = true;
- }
- }
- private void ChkOrderNo_CheckedChanged(object sender, EventArgs e)
- {
- if (ChkOrderNo.Checked)
- {
- TxtOrderNo.ReadOnly = false;
- }
- else
- {
- TxtOrderNo.ReadOnly = true;
- }
- }
- private void gdOrderHead_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
- {
- EntityHelper.ShowGridCaption<SlmOrderHeadEntityCh>(e.Layout.Bands[0]);
- }
- private void gdOrderLine_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
- {
- EntityHelper.ShowGridCaption<SlmOrderLineEntityCh>(e.Layout.Bands[0]);
- }
- private void gdOrderDlyLine_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
- {
- EntityHelper.ShowGridCaption<SlmOrderLineDeliveryEntityCh>(e.Layout.Bands[0]);
- }
- private void gdOrderDlyTrst_InitializeLayout(object sender, Infragistics.Win.UltraWinGrid.InitializeLayoutEventArgs e)
- {
- EntityHelper.ShowGridCaption<SlmOrderDeliveryTransitEntityCh>(e.Layout.Bands[0]);
- }
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- if (ultraTabOrder.ActiveTab.Key.Equals("tab1"))
- QueryOrderHead();
- else
- QueryOrderApply(this.CustomInfo);
- break;
- case "Delete":
- DeleteApply();
- break;
- case "Commit":
- CommitApply();
- break;
- case "UnLock":
- UnLockLine();
- break;
- case "Pass":
- PassOrderApply();
- break;
- case "Back":
- ReviewBackApply();
- break;
- case "Print":
- PrintChgeForm();
- break;
- case "UpdateDly":
- UpdateDly();
- break;
- case "Close":
- this.Close();
- break;
- case "Export":
- exportData();
- break;
- }
- }
- private void exportData()
- {
- GridHelper.ulGridToExcel(this.gdOrderApply, "变更单审批");
- }
- private void QueryOrderHead()
- {
- string saleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
- if (UserInfo.GetUserID() == "admin" && saleOrg == "NONE")
- {
- saleOrg = "100101";
- }
- string orderNo = "";
- if (ChkOrderNo.Checked)
- {
- orderNo = TxtOrderNo.Text.Trim();
- }
- string[] arr = this.ValidDataPurviewIds;
- string supp = this.CustomInfo.Contains("120504") ? "120504" : "";
- List<SlmOrderHeadEntityCh> list = EntityHelper.GetData<SlmOrderHeadEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderHead", new object[] { saleOrg, orderNo, arr, supp }, this.ob);
- slmOrderHeadEntityBindingSource.DataSource = list;
- UltraGridColumn[] col = new UltraGridColumn[] { gdOrderHead.DisplayLayout.Bands[0].Columns["MEMO"], gdOrderHead.DisplayLayout.Bands[0].Columns["MNYASKDESC"] };
- GridHelper.RefreshAndAutoSizeExceptColumns(gdOrderHead, col);
- if (list.Count <= 0)
- {
- slmOrderLineEntityBindingSource.Clear();
- slmOrderLineDeliveryEntityBindingSource.Clear();
- slmOrderDeliveryTransitEntityBindingSource.Clear();
- }
- }
- private void QueryOrderLine(string ordPk, string orderNo)
- {
- List<SlmOrderLineEntityCh> list = EntityHelper.GetData<SlmOrderLineEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderLine", new object[] { ordPk }, this.ob);
- slmOrderLineEntityBindingSource.DataSource = list;
- foreach (UltraGridRow row in gdOrderLine.Rows)
- {
- row.Cells["ORDERNO"].Value = orderNo;
- row.Cells["LockLine"].Value = "锁定";
- row.Cells["ChangeLine"].Value = "变更合同行";
- row.Cells["ChangeDlyLine"].Value = "变更交货行";
- if (row.Cells["ISLOCK"].Value.ToString() == "1")
- {
- row.RowSelectorAppearance.BackColor = Color.Red;
- }
- }
- gdOrderLine.UpdateData();
- }
- private void gdOrderHead_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = gdOrderHead.ActiveRow;
- if (ugr == null)
- {
- slmOrderLineEntityBindingSource.Clear();
- slmOrderLineDeliveryEntityBindingSource.Clear();
- slmOrderDeliveryTransitEntityBindingSource.Clear();
- return;
- }
- string ordPk = ugr.Cells["ORDPK"].Value.ToString();
- string orderNo = ugr.Cells["ORDERNO"].Value.ToString();
- QueryOrderLine(ordPk, orderNo);
- }
- private void QueryOrderDlyLine(string ordPk, string ordLnPk)
- {
- List<SlmOrderLineDeliveryEntityCh> list = EntityHelper.GetData<SlmOrderLineDeliveryEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderDlyLine", new object[] { ordPk, ordLnPk }, this.ob);
- slmOrderLineDeliveryEntityBindingSource.DataSource = list;
- GridHelper.RefreshAndAutoSize(gdOrderDlyLine);
- foreach (UltraGridRow row in gdOrderDlyLine.Rows)
- {
- if (row.Cells["ISLOCK"].Value.ToString() == "1")
- {
- row.RowSelectorAppearance.BackColor = Color.Yellow;
- }
- }
- }
- private void gdOrderLine_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = gdOrderLine.ActiveRow;
- if (ugr == null)
- {
- slmOrderLineDeliveryEntityBindingSource.Clear();
- slmOrderDeliveryTransitEntityBindingSource.Clear();
- return;
- }
- string ordPk = ugr.Cells["ORDPK"].Value.ToString();
- string ordLnPk = ugr.Cells["ORDLNPK"].Value.ToString();
- QueryOrderDlyLine(ordPk, ordLnPk);
- }
- private void gdOrderDlyLine_AfterRowActivate(object sender, EventArgs e)
- {
- UltraGridRow ugr = gdOrderDlyLine.ActiveRow;
- if (ugr == null)
- {
- slmOrderDeliveryTransitEntityBindingSource.Clear();
- return;
- }
- string ordPk = ugr.Cells["ORDPK"].Value.ToString();
- string ordLnPk = ugr.Cells["ORDLNPK"].Value.ToString();
- string ordLnDlyPk = ugr.Cells["ORDLNDLYPK"].Value.ToString();
- QueryOrderDlyLineTransit(ordPk, ordLnPk, ordLnDlyPk);
- }
- private void QueryOrderDlyLineTransit(string ordPk, string ordLnPk, string ordLnDlyPk)
- {
- List<SlmOrderDeliveryTransitEntityCh> list = EntityHelper.GetData<SlmOrderDeliveryTransitEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderDlyLineTransit", new object[] { ordPk, ordLnPk, ordLnDlyPk }, this.ob);
- slmOrderDeliveryTransitEntityBindingSource.DataSource = list;
- GridHelper.RefreshAndAutoSize(gdOrderDlyTrst);
- }
- private void gdOrderLine_ClickCellButton(object sender, CellEventArgs e)
- {
- if (e.Cell.Column.Key.Equals("LockLine"))
- {
- // MessageUtil.ShowTips("LOCK");
- //锁定 之前先判断合同行下的所有交货行是否有提报的,然后判断此行是否被锁定(生效 +不能重复锁定)
- string ordLnPk = e.Cell.Row.Cells["ORDLNPK"].Value.ToString();
- //2015-10-31 新增 如果工艺评审中 不能锁定进行合同行的变更 //2016-01-31 交货行变更不影响工艺评审
- /*DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.queryCraftDesign", new object[] { ordLnPk }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- MessageUtil.ShowWarning("此合同行正在工艺评审中,不能发起变更,请等待工艺评审结束!");
- return;
- }*/
- List<SlmOrderLineEntityCh> list = GetOrderLineLockStatus(ordLnPk);
- if (list != null && list.Count > 0)
- {
- SlmOrderLineEntityCh slm = list[0];
- if (!StringUtil.IsNumber(slm.OrderLnStatus.ToString()))
- {
- MessageUtil.ShowWarning("合同行状态异常!");
- return;
- }
- //合同行状态为:生效---》缴库完毕状态可以进行交货行变更
- if (Convert.ToInt32(slm.OrderLnStatus.ToString()) < 12020301 || Convert.ToInt32(slm.OrderLnStatus.ToString()) > 12020602)
- {
- MessageUtil.ShowWarning("合同行处于的状态不允许变更,\n生效状态-->缴库完毕之间状态才可锁定!");
- return;
- }
- if (slm.IsLock.ToString().Equals("1"))
- {
- MessageUtil.ShowWarning("该合同行已经锁定!");
- return;
- }
- }
- else
- {
- MessageUtil.ShowWarning("找不到有效的合同行!");
- return;
- }
- //判断材料表数据 提单 计划(锁定时不判断,再进行交货行变更操作时判断2016.12.23)
- //DataTable matDt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderMat", new object[] { ordLnPk }, this.ob);
- //List<string> listMat = new List<string>();
- //if (matDt != null && matDt.Rows.Count > 0)
- //{
- // foreach (DataRow dr in matDt.Rows)
- // {
- // listMat.Add(dr["MAT_STATUS"].ToString());
- // }
- // if (listMat != null && listMat.Count > 0)
- // {
- // //if (listMat.Contains("80150303"))
- // //{
- // // MessageUtil.ShowWarning("存在已经销售出厂的材料,不允许变更!");
- // // return;
- // //}
- // //else
- // if (listMat.Contains("80150302"))
- // {
- // MessageUtil.ShowWarning("存在已编提单的材料,请撤销相应的提单!");
- // return;
- // }
- // else
- // {
- // MessageUtil.ShowWarning("请先将您要变更的“生效状态”的交货行脱单!\n切记是 “生效状态”的交货行,切勿对错了交货行!");
- // return;
- // }
- // }
- //}
- ////计划(锁定时不判断,再进行交货行变更操作时判断2016.12.23)
- //DataTable planDt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderPlan", new object[] { ordLnPk }, this.ob);
- //if (planDt != null && planDt.Rows.Count > 0)
- //{
- // MessageUtil.ShowWarning("请先将您要变更的“生效状态”的交货行对应的发运计划关闭!\n切记是 “生效状态”的交货行,切勿对错了交货行!");
- // return;
- //}
- if (MessageUtil.ShowYesNoAndQuestion("是否确定锁定此行?") == DialogResult.No) return;
- int count = ServerHelper.SetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.lockOrderLine", new object[] { ordLnPk, "1" }, this.ob);
- if (count > 0)
- {
- MessageUtil.ShowTips("合同行锁定成功!");
- QueryOrderLine(e.Cell.Row.Cells["ORDPK"].Value.ToString(), e.Cell.Row.Cells["ORDERNO"].Value.ToString());
- }
- }
- else if (e.Cell.Column.Key.Equals("ChangeLine"))
- {
- //MessageUtil.ShowTips("ChangeLine");
- //暂时放弃
- }
- else if (e.Cell.Column.Key.Equals("ChangeDlyLine"))
- {
- //所在合同行未被锁定或者状态不是生效 不能进行更改
- string ordLnPk = e.Cell.Row.Cells["ORDLNPK"].Value.ToString();
- DataTable dt2 = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.queryYdmZcBillM", new object[] { ordLnPk }, this.ob);
- if (dt2 != null && dt2.Rows.Count > 0)
- {
- MessageUtil.ShowWarning("所选合同行存在在途提单,不能进行修改,请先关闭在途提单!");
- return;
- }
- DataTable dt1 = ServerHelper.GetData("com.steering.pss.sale.order.CoreCtrlOrderLine.queryYdmSendPlan", new object[] { ordLnPk }, this.ob);
- if (dt1 != null && dt1.Rows.Count > 0)
- {
- MessageUtil.ShowWarning("所选合同行存在未执行完的出厂计划,不能进行修改,请先关闭出厂计划!");
- return;
- }
- List<SlmOrderLineEntityCh> list = GetOrderLineLockStatus(ordLnPk);
- if (list != null && list.Count > 0)
- {
- SlmOrderLineEntityCh slm = list[0];
- if (!slm.IsLock.ToString().Equals("1")) // || !slm.OrderLnStatus.ToString().Equals("12020301") || !slm.OrderLnStatus.ToString().Equals("12020401")
- {
- if (!slm.IsLock.ToString().Equals("1"))
- {
- MessageUtil.ShowWarning("请先锁定合同行!");
- return;
- }
- }
- if (!StringUtil.IsNumber(slm.OrderLnStatus.ToString()))
- {
- MessageUtil.ShowWarning("合同行状态异常!");
- return;
- }
- if (Convert.ToInt32(slm.OrderLnStatus.ToString() == "" ? "0" : slm.OrderLnStatus.ToString()) < 12020301)
- {
- MessageUtil.ShowWarning("合同行状态尚未生效,无法发起交货行变更!");
- return;
- }
- }
- else
- {
- MessageUtil.ShowWarning("找不到有效的合同行!");
- return;
- }
- string errMsg = IsExistsApplyNoWithLineLock(ordLnPk, "交货行");
- if (errMsg == "2")
- {
- MessageUtil.ShowWarning("当前合同行处于非‘交货行’类型的变更中,请处理!");
- return;
- }
- else if (errMsg == "1")
- {
- MessageUtil.ShowWarning("当前合同行处于‘交货行’类型的变更中,请处理!");
- return;
- }
- UltraGridRow ugr = gdOrderLine.ActiveRow;
- string ordPk = ugr.Cells["ORDPK"].Value.ToString();
- string orderunit = ugr.Cells["ORDERUNIT"].Value.ToString();
- string shrow = gdOrderDlyLine.ActiveRow.Cells["RECEIVNM"].Value.ToString();
- string deliveryQty = "0";
- DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getDeliveryQty", new object[] { ugr.Cells["ORDLNPK"].Value.ToString() }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- deliveryQty = dt.Rows[0][0].ToString();
- }
- frmOrderDelivery fod = new frmOrderDelivery(this.ob);
- fod.OrderNo = ugr.Cells["ORDLNPK"].Value.ToString();
- fod.NumWt = deliveryQty;
- fod.OrderUnit = orderunit;
- fod.LenUnit = ugr.Cells["LENUNIT"].Value.ToString();
- fod.SaleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
- fod.ShRow = shrow;
- fod.FromForm = "2";
- fod.ManageNo = ordPk;
- fod.OrdNo = ugr.Cells["ORDERNO"].Value.ToString();
- fod.OrdSeq = ugr.Cells["ORDERSEQ"].Value.ToString();
- fod.Spec_code = ugr.Cells["SPECCODE"].Value.ToString();
- fod.ShowDialog();
- }
- }
- private void TxtOrderNo_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == 13)
- QueryOrderHead();
- }
- private void ultraGrid1_InitializeLayout(object sender, InitializeLayoutEventArgs e)
- {
- EntityHelper.ShowGridCaption<ChgeSlmApplyMEntityCh>(e.Layout.Bands[0]);
- }
- /// <summary>
- /// 变更单查询
- /// </summary>
- /// <param name="form">哪个界面</param>
- private void QueryOrderApply(string form)
- {
- ArrayList parm = new ArrayList();
- string orderNo = "";
- string applyNo = "";
- string chgeStatus = "";
- string approvalNo = "";
- if (chkApplyNo.Checked)
- applyNo = txtApplyNo.Text.Trim();
- if (chkOrdNo.Checked)
- orderNo = txtOrdNo.Text.Trim();
- if (chkApprovalNo.Checked)
- approvalNo = txtApplyNo.Text.Trim();
- if (chkChangeStatus.Checked)
- chgeStatus = cmbChangeStatus.Value == null ? "" : cmbChangeStatus.Value.ToString();
- string start = "";
- string end = "";
- if (chkPassTime.Checked)
- {
- start = startTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- end = endTime.Value.ToString("yyyy-MM-dd HH:mm:ss");
- }
- parm.Add(orderNo);
- parm.Add(applyNo);
- parm.Add(approvalNo);
- string userId = UserInfo.GetUserID();
- if (userId != "admin" && userId != "88888888" && userId != "99999999" && userId != "yanghp")
- {
- parm.Add(UserInfo.GetDeptid());
- parm.Add(UserInfo.GetUserName());
- }
- parm.Add(chgeStatus);
- string[] arr = this.ValidDataPurviewIds;
- List<ChgeSlmApplyMEntityCh> list = EntityHelper.GetData<ChgeSlmApplyMEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderApply", new object[] { parm, CustomInfo, arr, userId, start, end }, this.ob);
- chgeSlmApplyMEntityBindingSource.DataSource = list;
- //GridHelper.RefreshAndAutoSize(gdOrderApply);
- }
- private void DeleteApply()
- {
- gdOrderApply.UpdateData();
- //gdOrderApply.ActiveRow;
- ArrayList list = new ArrayList();
- int iCount = 0;
- foreach (UltraGridRow ugr in gdOrderApply.Rows)
- {
- if (ugr.Cells["CHK"].Value.ToString().ToUpper() == "TRUE")
- {
- iCount += 1;
- string status = GetApplyNoStatus(ugr.Cells["ORDERCHGENO"].Value.ToString());
- if (status != "L")
- {
- MessageUtil.ShowWarning("您选择的变更单现在处于的状态无法删除!");
- return;
- }
- //虽然打印了审批单 但是尚未提报的 可以删除
- //if (ugr.Cells["APPROVALNO"].Value.ToString() != "")
- //{
- // MessageUtil.ShowWarning("您选择的变更单已被打印等待审批,无法删除!");
- // return;
- //}
- list.Add(ugr.Cells["ORDERCHGENO"].Value.ToString());
- }
- }
- if (iCount == 0)
- {
- MessageUtil.ShowWarning("请选择您要删除的变更单!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("删除变更单将放弃变更,是否删除?") == DialogResult.No)
- return;
- int count = ServerHelper.SetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.deleteOrderApplyNo", new object[] { list, UserInfo.GetUserName() }, this.ob);
- if (count > 0)
- {
- MessageUtil.ShowWarning("删除成功!");
- QueryOrderApply(this.CustomInfo);
- }
- }
- private void ultraTabOrder_SelectedTabChanged(object sender, Infragistics.Win.UltraWinTabControl.SelectedTabChangedEventArgs e)
- {
- try
- {
- if (toolMenu!=null) {
- if (e.Tab.Key.Equals("tab1"))
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
- this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False;
- if (toolMenu.Toolbars[0].Tools.Exists("Commit"))
- this.toolMenu.Toolbars[0].Tools["Commit"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False;
- if (toolMenu.Toolbars[0].Tools.Exists("UnLock"))
- this.toolMenu.Toolbars[0].Tools["UnLock"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True;
- }
- else
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
- this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True;
- if (toolMenu.Toolbars[0].Tools.Exists("Commit"))
- this.toolMenu.Toolbars[0].Tools["Commit"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True;
- if (toolMenu.Toolbars[0].Tools.Exists("UnLock"))
- this.toolMenu.Toolbars[0].Tools["UnLock"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False;
- }
- }
- }
- catch
- {
- }
- }
- /// <summary>
- /// 获取变更单的状态
- /// </summary>
- /// <param name="applyNo"></param>
- /// <returns></returns>
- private string GetApplyNoStatus(string applyNo)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.selectApplyNoStatus", new object[] { applyNo }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- return dt.Rows[0][0].ToString();
- return "";
- }
- /// <summary>
- /// 清除交货期那一套变更表内容
- /// </summary>
- /// <param name="ordLnPk"></param>
- private void ClearDeliveryAndTransit(string ordLnPk)
- {
- ServerHelper.SetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.clearDeliveryAndTransit", new object[] { ordLnPk }, this.ob);
- }
- /// <summary>
- /// 提报变更单
- /// </summary>
- private void CommitApply()
- {
- gdOrderApply.UpdateData();
- int iCount = 0;
- ArrayList list = new ArrayList();
- foreach (UltraGridRow ugr in gdOrderApply.Rows)
- {
- if (ugr.Cells["CHK"].Value.ToString().ToUpper() == "TRUE")
- {
- iCount += 1;
- string applyNo = ugr.Cells["ORDERCHGENO"].Value.ToString();
- string status = GetApplyNoStatus(applyNo);
- if (status == "W")
- {
- MessageUtil.ShowWarning("您选择的变更单已经提报,不必重复提报!");
- return;
- }
- else if (status == "S")
- {
- MessageUtil.ShowWarning("您选择的变更单已经通过,无法提报!");
- return;
- }
- else if (status == "F")
- {
- MessageUtil.ShowWarning("您选择的变更单已经失败,无法提报!");
- return;
- }
- list.Add(applyNo);
- }
- }
- if (iCount == 0)
- {
- MessageUtil.ShowWarning("请选择您要提报的变更单!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否提报选择的变更单?") == DialogResult.No) return;
- CoreClientParam ccp = new CoreClientParam();
- ccp.IfShowErrMsg = false;
- ccp.ServerName = "com.steering.pss.sale.order.orderchange.CoreOrderChangeManage";
- ccp.MethodName = "commitApplyNo";
- ccp.ServerParams = new object[] { list };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp != null)
- {
- if (ccp.ReturnCode == -1)
- {
- if (ccp.ReturnObject != null && ccp.ReturnObject.ToString() == "AddFalse")
- {
- MessageUtil.ShowWarning("合同行的交货期不满足,请点击调整交货期进行调整!");
- return;
- }
- else
- {
- MessageUtil.ShowWarning(ccp.ReturnInfo);
- return;
- }
- }
- MessageUtil.ShowTips("变更单提报完成!");
- QueryOrderApply(this.CustomInfo);
- }
- }
- private void FormOrderChangeManage_Shown(object sender, EventArgs e)
- {
- if (this.CustomInfo == "2" || CustomInfo == "3" || CustomInfo == "3-120504" || CustomInfo == "2-120504")
- {
- ultraTabOrder.Tabs["tab1"].Visible = false;
- }
- if (CustomInfo == "1" || CustomInfo == "1-120504")
- {
- ultraTabOrder.Tabs["tab2"].Visible = false;
- }
- if (ultraTabOrder.ActiveTab.Key.Equals("tab1"))
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
- this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False;
- if (toolMenu.Toolbars[0].Tools.Exists("Commit"))
- this.toolMenu.Toolbars[0].Tools["Commit"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.False;
- }
- else
- {
- if (toolMenu.Toolbars[0].Tools.Exists("Delete"))
- this.toolMenu.Toolbars[0].Tools["Delete"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True;
- if (toolMenu.Toolbars[0].Tools.Exists("Commit"))
- this.toolMenu.Toolbars[0].Tools["Commit"].InstanceProps.Visible = Infragistics.Win.DefaultableBoolean.True;
- }
- }
- private void chkApplyNo_CheckedChanged(object sender, EventArgs e)
- {
- if (chkApplyNo.Checked)
- txtApplyNo.ReadOnly = false;
- else
- txtApplyNo.ReadOnly = true;
- }
- private void chkOrdNo_CheckedChanged(object sender, EventArgs e)
- {
- if (chkOrdNo.Checked)
- txtOrdNo.ReadOnly = false;
- else
- txtOrdNo.ReadOnly = true;
- }
- private void txtApplyNo_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == 13)
- QueryOrderApply(this.CustomInfo);
- }
- private void txtOrdNo_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == 13)
- QueryOrderApply(this.CustomInfo);
- }
- private void gdOrderLine_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- if (e.Row.Cells["ISLOCK"].Value.ToString() == "1")
- e.Row.RowSelectorAppearance.BackColor = Color.Red;
- else
- e.Row.RowSelectorAppearance.BackColor = color;
- }
- /// <summary>
- /// 获取合同行锁定状态
- /// </summary>
- /// <param name="ordLnPk"></param>
- /// <returns></returns>
- private List<SlmOrderLineEntityCh> GetOrderLineLockStatus(string ordLnPk)
- {
- List<SlmOrderLineEntityCh> list = new List<SlmOrderLineEntityCh>();
- list = EntityHelper.GetData<SlmOrderLineEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getOrderLineLockStatus", new object[] { ordLnPk }, this.ob);
- return list;
- }
- /// <summary>
- /// 审核通过变更单
- /// </summary>
- private void PassOrderApply()
- {
- gdOrderApply.UpdateData();
- //UltraGridRow ugr = gdOrderApply.ActiveRow;
- //if (ugr == null)
- //{
- // MessageUtil.ShowWarning("请选择您要评审的变更单!");
- // return;
- //}
- int iCount = 0;
- ArrayList list = new ArrayList();
- foreach (UltraGridRow ugr in gdOrderApply.Rows)
- {
- if (ugr.Cells["CHK"].Value.ToString().ToUpper() == "TRUE")
- {
- iCount += 1;
- ChgeSlmApplyMEntityCh csm = (ChgeSlmApplyMEntityCh)ugr.ListObject;
- csm.Acceptor = UserInfo.GetUserName();
- csm.AcpDepartmentCode = ClsBaseInfo.GetDepartIdBySectionId(UserInfo.GetDeptid(), this.ob);
- csm.AcpDepartmentDesc = ClsBaseInfo.GetDepartBySectionId(UserInfo.GetDeptid(), this.ob);
- csm.AcpUnitCode = UserInfo.GetDeptid();
- csm.AcpUnitDesc = UserInfo.GetDepartment();
- csm.UpdateName = UserInfo.GetUserName();
- string status = GetOrderApplyStatus(csm.OrderChgeNo.ToString());
- if (status == "S")
- {
- MessageUtil.ShowWarning("您选择的变更单已经通过!");
- return;
- }
- else
- {
- if (status != "W")
- {
- MessageUtil.ShowWarning("您选择的变更单状态不是待审状态!");
- return;
- }
- }
- list.Add(JSONFormat.Format(csm));
- }
- }
- if (iCount == 0)
- {
- MessageUtil.ShowWarning("请选择您要审批通过的变跟单记录!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认审批通过") == DialogResult.No) return;
- //if (csm.ChgeType.ToString().Contains("交货行")) //交货期变更
- //{
- // int count = ServerHelper.SetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.passOrderDlyApply", new object[] { JSONFormat.Format(csm) }, this.ob);
- // if (count > 0)
- // {
- // MessageUtil.ShowTips("评审通过!");
- // QueryOrderApply(this.CustomInfo);
- // }
- //}
- //else if (csm.ChgeType.ToString().Contains("合同行"))
- //{
- CoreClientParam ccp = new CoreClientParam();
- ccp.IfShowErrMsg = false;
- ccp.ServerName = "com.steering.pss.sale.order.orderchange.CoreOrderChangeManage";
- ccp.MethodName = "passOrderLineApply";
- ccp.ServerParams = new object[] { list, UserInfo.GetUserName() };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp != null)
- {
- if (ccp.ReturnCode == -1)
- {
- MessageUtil.ShowWarning(ccp.ReturnInfo);
- return;
- }
- MessageUtil.ShowTips("评审通过!");
- QueryOrderApply(this.CustomInfo);
- }
- }
- /// <summary>
- /// 获取变更单的状态
- /// </summary>
- /// <param name="applyNo"></param>
- /// <returns></returns>
- private string GetOrderApplyStatus(string applyNo)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.selectApplyNoStatus", new object[] { applyNo }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- return dt.Rows[0][0].ToString();
- return "";
- }
- /// <summary>
- /// 变更单审核不通过
- /// </summary>
- private void ReviewBackApply()
- {
- gdOrderApply.UpdateData();
- //UltraGridRow ugr = gdOrderApply.ActiveRow;
- //if (ugr == null)
- //{
- // MessageUtil.ShowWarning("请选择您要评审的变更单!");
- // return;
- //}
- int iCount = 0;
- ArrayList list = new ArrayList();
- foreach (UltraGridRow ugr in gdOrderApply.Rows)
- {
- if (ugr.Cells["CHK"].Value.ToString().ToUpper() == "TRUE")
- {
- iCount += 1;
- ChgeSlmApplyMEntityCh csm = (ChgeSlmApplyMEntityCh)ugr.ListObject;
- csm.Acceptor = UserInfo.GetUserName();
- csm.AcpDepartmentCode = ClsBaseInfo.GetDepartIdBySectionId(UserInfo.GetDeptid(), this.ob);
- csm.AcpDepartmentDesc = ClsBaseInfo.GetDepartBySectionId(UserInfo.GetDeptid(), this.ob);
- csm.AcpUnitCode = UserInfo.GetDeptid();
- csm.AcpUnitDesc = UserInfo.GetDepartment();
- csm.UpdateName = UserInfo.GetUserName();
- string status = GetOrderApplyStatus(csm.OrderChgeNo.ToString());
- if (status == "S")
- {
- MessageUtil.ShowWarning("您选择的变更单已经通过!");
- return;
- }
- else
- {
- if (status != "W")
- {
- MessageUtil.ShowWarning("您选择的变更单状态不是待审状态!");
- return;
- }
- }
- list.Add(JSONFormat.Format(csm));
- }
- }
- if (iCount == 0)
- {
- MessageUtil.ShowWarning("请选择您要审批不通过的变更单记录!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否确认审批不通过") == DialogResult.No) return;
- CoreClientParam ccp = new CoreClientParam();
- ccp.IfShowErrMsg = false;
- ccp.ServerName = "com.steering.pss.sale.order.orderchange.CoreOrderChangeManage";
- ccp.MethodName = "reviewBackOrderDlyApply";
- ccp.ServerParams = new object[] { list, UserInfo.GetUserName() };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp != null)
- {
- if (ccp.ReturnCode == -1)
- {
- MessageUtil.ShowWarning(ccp.ReturnInfo);
- return;
- }
- MessageUtil.ShowTips("操作成功!");
- QueryOrderApply(this.CustomInfo);
- }
- }
- /// <summary>
- /// 解锁-锁定的合同行
- /// </summary>
- private void UnLockLine()
- {
- gdOrderLine.UpdateData();
- UltraGridRow ugr = gdOrderLine.ActiveRow;
- if (ugr == null)
- {
- MessageUtil.ShowWarning("请选择您要解锁的合同行!");
- return;
- }
- string ordLnPk = ugr.Cells["ORDLNPK"].Value.ToString();
- List<SlmOrderLineEntityCh> list = GetOrderLineLockStatus(ordLnPk);
- if (list != null && list.Count > 0)
- {
- SlmOrderLineEntityCh slm = list[0];
- if (slm.IsLock.ToString().Equals("0"))
- {
- MessageUtil.ShowWarning("该合同行并未锁定!");
- return;
- }
- }
- else
- {
- MessageUtil.ShowWarning("找不到有效的合同行!");
- return;
- }
- DataTable dt = ServerHelper.GetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getExistsApplyNo", new object[] { ugr.Cells["ORDPK"].Value.ToString() }, this.ob);
- List<string> line = new List<string>();
- if (dt != null && dt.Rows.Count > 0)
- {
- for (int i = 0; i < dt.Rows.Count; i++)
- {
- line.Add(dt.Rows[i][0].ToString());
- }
- }
- if (line.Contains("W") || line.Contains("L"))
- {
- MessageUtil.ShowWarning("当前合同下存在未处理的变更单,无法解锁!\n请到变更单管理界面处理该合同的变更单!");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("是否解锁选定的合同行?") == DialogResult.No) return;
- int count = ServerHelper.SetData("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.lockOrderLine", new object[] { ordLnPk, "0" }, this.ob);
- if (count > 0)
- {
- MessageUtil.ShowTips("合同行解锁成功!");
- QueryOrderLine(gdOrderHead.ActiveRow.Cells["ORDPK"].Value.ToString(), gdOrderHead.ActiveRow.Cells["ORDERNO"].Value.ToString());
- }
- }
- /// <summary>
- /// 获取变更单对象(封锁、待审)
- /// </summary>
- /// <param name="ordLnPk"></param>
- /// <returns></returns>
- public List<ChgeSlmApplyMEntityCh> GetSlmApplyEntity(string ordLnPk)
- {
- List<ChgeSlmApplyMEntityCh> list = new List<ChgeSlmApplyMEntityCh>();
- list = EntityHelper.GetData<ChgeSlmApplyMEntityCh>("com.steering.pss.sale.order.orderchange.CoreOrderChangeManage.getSlmApplyEntity", new object[] { ordLnPk }, this.ob);
- return list;
- }
- /// <summary>
- /// 锁定的合同行是否存在变更单
- /// </summary>
- /// <param name="ordLnPk"></param>
- /// <param name="appType"></param>
- /// <returns></returns>
- public string IsExistsApplyNoWithLineLock(string ordLnPk, string appType)
- {
- string errMsg = "";
- List<ChgeSlmApplyMEntityCh> list = GetSlmApplyEntity(ordLnPk); //“L" 和 "W" 状态
- if (list != null && list.Count > 0)
- {
- ChgeSlmApplyMEntityCh csm = list[0];
- if (csm.ApprovalNo.ToString() != "")
- {
- errMsg = "变更单已被打印等待审批,请等待此次变更结束!";
- return errMsg;
- }
- if (csm.ChgeType.ToString().Contains(appType))
- {
- errMsg = "1";
- }
- else
- {
- errMsg = "2";
- }
- return errMsg;
- }
- else
- {
- return errMsg; //不存在任何(待处理(L,W))变更单
- }
- }
- private void chkChangeStatus_CheckedChanged(object sender, EventArgs e)
- {
- if (chkChangeStatus.Checked)
- {
- cmbChangeStatus.ReadOnly = false;
- }
- else
- {
- cmbChangeStatus.ReadOnly = true;
- }
- }
- private void gdOrderApply_AfterRowActivate(object sender, EventArgs e)
- {
- gdOrderApply.UpdateData();
- UltraGridRow ugr = gdOrderApply.ActiveRow;
- if (ugr == null)
- return;
- for (int i = 0; i < ugr.Cells.Count; i++)
- {
- if (ugr.Cells[i].Column.Key.Equals("CHK"))
- ugr.Cells[i].Activation = Activation.AllowEdit;
- else
- ugr.Cells[i].Activation = Activation.ActivateOnly;
- }
- }
- private void PrintChgeForm()
- {
- gdOrderApply.UpdateData();
- int iCount = 0;
- ArrayList list = new ArrayList();
- List<string> line = new List<string>(); //合同号
- List<string> approval = new List<string>(); //评审单号
- List<string> parm = new List<string>();
- foreach (UltraGridRow ugr in gdOrderApply.Rows)
- {
- if (ugr.Cells["CHK"].Value.ToString().ToUpper() == "TRUE")
- {
- iCount += 1;
- string applyNo = ugr.Cells["ORDERCHGENO"].Value.ToString();
- string status = GetApplyNoStatus(applyNo);
- if (status != "W")
- {
- //MessageUtil.ShowWarning("您只能选择待审状态的变更单进行打印!");
- //return;
- }
- if (!line.Contains(ugr.Cells["ORDERNO"].Value.ToString()))
- line.Add(ugr.Cells["ORDERNO"].Value.ToString());
- if (!approval.Contains(ugr.Cells["APPROVALNO"].Value.ToString()))
- approval.Add(ugr.Cells["APPROVALNO"].Value.ToString());
- parm.Add(ugr.Cells["ORDERCHGENO"].Value.ToString());
- list.Add(applyNo);
- }
- }
- if (iCount == 0)
- {
- MessageUtil.ShowWarning("请选择您要打印的变更单!");
- return;
- }
- if (line.Count != 1)
- {
- MessageUtil.ShowWarning("您选择的记录中合同号不完全一样,不能打印!");
- return;
- }
- if (approval.Count != 1)
- {
- MessageUtil.ShowWarning("您选择的记录中评审单号不完全一样(不同批次),不能打印!");
- return;
- }
- string saleOrg = ClsBaseInfo.GetSaleOrg(UserInfo.GetDeptid());
- string prefix = "";
- if (saleOrg == "100101")
- {
- prefix = "XS";
- }
- else if (saleOrg == "100102")
- {
- prefix = "IE";
- }
- else if (saleOrg == "100103")
- {
- prefix = "GM";
- }
- CoreClientParam ccp = new CoreClientParam();
- ccp.IfShowErrMsg = false;
- ccp.ServerName = "com.steering.pss.sale.order.orderchange.CoreOrderChangeManage";
- ccp.MethodName = "printGenerateApprovalNo";
- ccp.ServerParams = new object[] { list, prefix };
- ccp = this.ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp != null)
- {
- if (ccp.ReturnCode == -1)
- {
- MessageUtil.ShowWarning(ccp.ReturnInfo);
- return;
- }
- }
- else
- {
- return;
- }
- string paramer = "";
- for (int i = 0; i < parm.Count; i++)
- {
- if (paramer == "")
- paramer = parm[i];
- else
- paramer = paramer + "','" + parm[i];
- }
- string strUrl = "http://172.54.10.42:8080/webroot/decision/view/report?viewlet=RepOrderChge.cpt&__bypagesize__=false" + "&chgeno=" + paramer;
- FrmOrderRepExcel fBug = new FrmOrderRepExcel(ob, strUrl);
- fBug.AutoSize = true;
- fBug.Text = "变更单打印";
- fBug.Size = new Size(768, 768);
- fBug.Show();
- QueryOrderApply(this.CustomInfo);
- }
- private void chkApprovalNo_CheckedChanged(object sender, EventArgs e)
- {
- if (chkApprovalNo.Checked)
- txtApprovalNo.ReadOnly = false;
- else
- txtApprovalNo.ReadOnly = true;
- }
- private void UpdateDly()
- {
- string[] arr = this.ValidDataPurviewIds;
- FrmOrderDeliveryAdjust fod = new FrmOrderDeliveryAdjust(ob, arr);
- fod.WindowState = FormWindowState.Maximized;
- fod.ShowDialog();
- }
- }
- }
|