| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287 |
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- //using com.steering.pss.plnsaleord.processOrder.entity;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- //using Core.StlMes.Client.PlnSaleOrd.BaseMethod;
- //using Core.StlMes.Client.PlnSaleOrd.Entity;
- using CoreFS.CA06;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using Core.Mes.Client.Comm.Format;
- namespace Core.StlMes.Client.Lims.Data.PipeAndOutdec
- {
- public partial class FrmContractExemption : FrmBase
- {
- private string _inMaterialNo = "";
- private string _outMaterialNo = "";
- private string _inMaterialDesc = "";
- private string _outMaterialDesc = "";
- private string _groupPlan = "";
- private string _plineCode = "";
- public FrmContractExemption(string inMaterialNo, string outMaterialNo, OpeBase ob)
- {
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- InitializeComponent();
- _inMaterialNo = inMaterialNo;
- _outMaterialNo = outMaterialNo;
- this.ob = ob;
- }
- public FrmContractExemption(string inMaterialNo, string outMaterialNo, string groupPlan, string plineCode, OpeBase ob)
- {
- this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
- InitializeComponent();
- _inMaterialNo = inMaterialNo;
- _outMaterialNo = outMaterialNo;
- _groupPlan = groupPlan;
- _plineCode = plineCode;
- this.ob = ob;
- }
- //public FrmBaseMaterialFPl()
- //{
- // InitializeComponent();
- //}
- private void FrmBaseMaterialFPl_Load(object sender, EventArgs e)
- {
- EntityHelper.ShowGridCaption<SlmBaseMaterialFPlEntity>(ultraGridRcl.DisplayLayout.Bands[0]);
- BaseHelper.setColumnBackColor(ultraGridRcl, new string[] { "HrCapcty", "PrdRate", "DisableFl", "WasteRate", "PlineCode", "PlineLevel" });
- BaseHelper.InitCellPosition(ultraGridRcl, new string[] { "HrCapcty", "PrdRate", "WasteRate", "PlineLevel" });
- InitMaterialDesc();
- InitPline();
- //如果在基础热处理找不到,则不执行
- if (_inMaterialDesc.Equals(""))
- {
- ultraGridRcl.Enabled = false;
- return;
- }
- DoQuery();
- }
- /// <summary>
- /// 初始化产线
- /// </summary>
- private void InitPline()
- {
- UltraComboEditor uce = new UltraComboEditor();
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialFPl.getBasePlineF", new object[] {_groupPlan }, this.ob);
- uce.DataSource = dt;
- uce.DisplayMember = "PLINE_NAME";
- uce.ValueMember = "PLINE_CODE";
- Controls.Add(uce);
- uce.Visible = false;
- uce.DropDownListWidth = -1;
- UltraGridBand ugb = ultraGridRcl.DisplayLayout.Bands[0];
- ugb.Columns["PlineCode"].EditorComponent = uce;
- ugb.Columns["PlineCode"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- }
- /// <summary>
- /// 初始化物料描述
- /// </summary>
- /// <param name="inMaterialNo"></param>
- /// <param name="outMaterialNo"></param>
- private void InitMaterialDesc()
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialFPl.getBaseMaterialDescF", new object[] { _inMaterialNo, _outMaterialNo }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- _inMaterialDesc = dt.Rows[0]["IN_MATERIAL_DESC"].ToString();
- _outMaterialDesc = dt.Rows[0]["OUT_MATERIAL_DESC"].ToString();
- }
-
- }
- private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
- {
- switch (e.Tool.Key.Trim())
- {
- case "查询":
- DoQuery();
- break;
- case "新增":
- DoSave("0");
- break;
- case "修改":
- DoSave("1");
- break;
- case "删除":
- DoSave("2");
- break;
- case "关闭":
- this.Close();
- break;
- }
- }
- public void DoQuery()
- {
- List<SlmBaseMaterialFPlEntity> materialFPlEntityList = EntityHelper.GetData<SlmBaseMaterialFPlEntity>(
- "com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialFPl.queryRclPl", new object[] { _inMaterialNo, _outMaterialNo,_groupPlan }, ob);
- slmBaseMaterialFPlEntityBindingSource.DataSource = materialFPlEntityList;
- if (!_plineCode.Equals(""))
- {
- IQueryable<UltraGridRow> chcRows = ultraGridRcl.Rows.AsQueryable().Where(a => a.GetValue("PlineCode") == _plineCode);
- if (chcRows != null && chcRows.Count() != 0)
- {
- chcRows.First().Activate();
- chcRows.First().Cells["CHC"].Value = true;
- }
- }
- }
- private void DoSave(string flag)
- {
- ultraGridRcl.UpdateData();
- IQueryable<UltraGridRow> chcRows = ultraGridRcl.Rows.AsQueryable().Where("CHC = 'True'");
- if (chcRows.Count() == 0)
- {
- MessageUtil.ShowTips("请选择记录!");
- return;
- }
- ArrayList plineList = new ArrayList();
- ArrayList list = new ArrayList();
- foreach (UltraGridRow ugr in chcRows)
- {
- SlmBaseMaterialFPlEntity fPlEntity = (SlmBaseMaterialFPlEntity)ugr.ListObject;
- if (fPlEntity.PlineCode.Equals(""))
- {
- MessageUtil.ShowWarning("请选择热处理产线!");
- return;
- }
- if (plineList.Contains(fPlEntity.PlineCode))
- {
- MessageUtil.ShowWarning("存在相同的产线(" + fPlEntity .PlineName+ ")!");
- return;
- }
- else
- {
- plineList.Add(fPlEntity.PlineCode);
- }
- if (flag.Equals("0") && CheckIsExist(fPlEntity.PlineCode, fPlEntity.InMaterialNo, fPlEntity.OutMaterialNo))
- {
- MessageUtil.ShowWarning("已经存在的记录(产线:" + fPlEntity.PlineName + ",投入物料:" + fPlEntity.InMaterialDesc + ",产出物料:" + fPlEntity.OutMaterialDesc+"),不能新增!");
- return;
- }
- if (flag.Equals("1") && (!CheckIsExist(fPlEntity.PlineCode, fPlEntity.InMaterialNo, fPlEntity.OutMaterialNo) || fPlEntity.CreateTime.Equals("")))
- {
- MessageUtil.ShowWarning("不存在的记录(产线:" + fPlEntity.PlineName + ",投入物料:" + fPlEntity.InMaterialDesc + ",产出物料:" + fPlEntity.OutMaterialDesc + "),不能修改!");
- return;
- }
- if (flag.Equals("2") &&( !CheckIsExist(fPlEntity.PlineCode, fPlEntity.InMaterialNo, fPlEntity.OutMaterialNo)||fPlEntity.CreateTime.Equals("")))
- {
- MessageUtil.ShowWarning("不存在的记录(产线:" + fPlEntity.PlineName + ",投入物料:" + fPlEntity.InMaterialDesc + ",产出物料:" + fPlEntity.OutMaterialDesc + "),不能删除!");
- return;
- }
- if (fPlEntity.DisableFl.Equals("True"))
- {
- fPlEntity.DisableFl = "1";
- }
- else
- {
- fPlEntity.DisableFl = "0";
- }
- fPlEntity.CreateName = UserInfo.GetUserName();
- fPlEntity.UpdateName = UserInfo.GetUserName();
- list.Add(JSONFormat.Format(fPlEntity));
- }
- string message="";
- if(flag.Equals("0")){
- message="是否新增记录?";
- }else if(flag.Equals("1")){
- message="是否修改记录?";
- }else{
- message="此操作不可恢复,是否删除记录?";
- }
- if (MessageUtil.ShowYesNoAndQuestion(message) == DialogResult.No)
- {
- return;
- }
- ServerHelper.SetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialFPl.saveRclPl", new object[] { list, flag }, ob);
- DoQuery();
- MessageUtil.ShowTips("操作成功!");
- }
- private bool CheckIsExist(string plineCode,string inMaterialNo,string outMaterialNo)
- {
- DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmBaseMaterialFPl.checkIsExist", new object[] { plineCode, inMaterialNo, outMaterialNo }, this.ob);
- if (dt != null && dt.Rows.Count > 0)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- private void ultraGridRcl_AfterRowInsert(object sender, RowEventArgs e)
- {
- UltraGridRow ugr = e.Row;
- ugr.Cells["InMaterialDesc"].Value = _inMaterialDesc;
- ugr.Cells["InMaterialNo"].Value = _inMaterialNo;
- ugr.Cells["outMaterialDesc"].Value = _outMaterialDesc;
- ugr.Cells["outMaterialNo"].Value = _outMaterialNo;
- ugr.Cells["DisableFl"].Value = false;
- }
- private void ultraGridRcl_CellChange(object sender, CellEventArgs e)
- {
- ultraGridRcl.UpdateData();
- if (e.Cell.Column.Key.Equals("PlineCode"))
- {
- e.Cell.Row.Cells["PlineName"].Value = e.Cell.Text;
- }
- }
- private void ultraGridRcl_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- ControlCellEdit(e.Row);
- }
- private void ControlCellEdit(UltraGridRow row)
- {
- foreach (UltraGridCell cell in row.Cells)
- {
- if (cell.Column.CellAppearance.BackColor == Color.FromArgb(255, 255, 128))
- {
- if (row.Cells["CHC"].Value.ToString() == "True")
- {
- cell.Activation = Activation.AllowEdit;
- }
- else
- {
- cell.Activation = Activation.ActivateOnly;
- }
- if (!row.Cells["CreateTime"].Value.ToString().Equals(""))
- {
- if (cell.Column.Key.Equals("PlineCode"))
- {
- cell.Activation = Activation.ActivateOnly;
- }
- }
- }
- else
- {
- if (!cell.Column.Key.Equals("CHC"))
- {
- cell.Activation = Activation.ActivateOnly;
- }
- }
- }
- }
- }
- }
|