using Core.Mes.Client.Comm.Control; using Core.Mes.Client.Comm.Format; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using Core.StlMes.Client.PlnSaleOrd.BaseMethod; using Core.StlMes.Client.PlnSaleOrd.工序排产.control; using Core.StlMes.Client.PlnSaleOrd.工序排产.entity; using CoreFS.CA06; using Infragistics.Win; using Infragistics.Win.UltraWinGrid; 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; namespace Core.StlMes.Client.PlnSaleOrd { public partial class FrmComBaseMandrel : FrmBase { private string madrelId = ""; private BaseMandrelSpec _baseMandrelSpec; public FrmComBaseMandrel() { InitializeComponent(); } private void FrmComBaseMandrel_Load(object sender, EventArgs e) { BaseHelper.setOtherColumnReadOnly(entityGridMandrel, new string[] { "" }); BaseHelper.InitCellPosition(entityGridMandrel, new string[] { "DiameterMandrel", "LenMandrel" }); BaseHelper.setUltraGridColumnMaxInput(entityGridMandrel, new string[] { "DiameterMandrel" }); InitModel(); _baseMandrelSpec = new BaseMandrelSpec(splitContainer1.Panel2, ob); _baseMandrelSpec.CreName = this.UserInfo.GetUserName(); } private void InitModel() { DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.initModel", new object[] { }, ob); txtModel1.DropDownListWidth = -1; txtModel1.DropDownStyle = DropDownStyle.DropDownList; txtModel1.DataSource = dt; txtModel1.DisplayMember = "MODEL_DESC"; txtModel1.ValueMember = "MODEL_CODE"; ClsBaseInfo.SetComboItemHeight(txtModel1); txtModel2.DropDownListWidth = -1; txtModel2.DropDownStyle = DropDownStyle.DropDownList; txtModel2.DataSource = dt; txtModel2.DisplayMember = "MODEL_DESC"; txtModel2.ValueMember = "MODEL_CODE"; ClsBaseInfo.SetComboItemHeight(txtModel2); ClsBaseInfo.SetComboItemHeight(txtOr); } private void chcModel_CheckedChanged(object sender, EventArgs e) { if (chcModel.Checked) { txtModel1.ReadOnly = false; } else { txtModel1.ReadOnly = true; } } public override void ToolBar_Click(object sender, string ToolbarKey) { base.ToolBar_Click(sender, ToolbarKey); switch (ToolbarKey) { case "Query"://查询 Query(); break; case "Add"://新增 Add(); break; case "Update"://修改 q Update(); break; case "Delete"://删除 Delete(); break; case "Close"://关闭 this.Close(); break; case "Export": //导出 GridHelper.ulGridToExcel(entityGridMandrel, "孔型信息"); break; default: break; } } private void Query() { string modelDesc = ""; if (chcModel.Checked && txtModel1.Value != null) { modelDesc = txtModel1.Text.ToString(); } List listSource = EntityHelper.GetData ("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.query", new object[] { modelDesc }, ob); comBaseMandrelEntityBindingSource.DataSource = listSource; if (!madrelId.Equals("")&&entityGridMandrel.Rows.Count>0) { foreach (UltraGridRow ugr in entityGridMandrel.Rows) { if (ugr.Cells["MandrelId"].Text.Equals(madrelId)) { ugr.Activate(); break; } } } madrelId = ""; } private void Add() { if (!CheckParams()) { return; } ComBaseMandrelEntity entity = new ComBaseMandrelEntity(); string dimater = txtDiameter.Value.ToString(); string length = txtLength.Value.ToString(); string model = txtModel2.Text; //if (!CheckMandrel(dimater)) { MessageUtil.ShowWarning("存在相同的芯棒直径 " + dimater + "!", txtDiameter); return; } string massyOr = txtOr.Text; string taper = txtTaper.Text.Trim(); string memo = txtMemo.Text.Trim(); ArrayList list = new ArrayList(); list.Add(dimater); list.Add(length); list.Add(model); list.Add(taper); list.Add(massyOr); if (!CheckMandrel1(list)) { MessageUtil.ShowWarning("存在相同的芯棒直径、长度、芯棒扣型、锥度、空心实心!"); return; } entity.CreateName = UserInfo.GetUserName(); entity.DiameterMandrel = (decimal?)Convert.ToDouble(dimater); entity.LenMandrel = (decimal?)Convert.ToDouble(length); entity.MandrelId = String.Format("{0:N1}", Convert.ToDouble(dimater)); entity.MassyOrHollow = massyOr; entity.Memo = memo; entity.ScrewModel = model; entity.TaperMandrel = taper; string jsonStr = JSONFormat.Format(entity); if (MessageUtil.ShowYesNoAndQuestion("是否新增?") == DialogResult.No) { return; } madrelId = entity.MandrelId; int count = ServerHelper.SetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.add", new object[] { jsonStr }, ob); if (count == 0) { MessageUtil.ShowTips("服务端处理失败!"); return; } else { MessageUtil.ShowWarning("新增成功!", entityGridMandrel); Query(); } } private void Update() { UltraGridRow ugr = entityGridMandrel.ActiveRow; if (ugr == null) { MessageUtil.ShowWarning("请选择要修改的记录!", entityGridMandrel); return; } if (!CheckParams()) { return; } ComBaseMandrelEntity entity = (ComBaseMandrelEntity)ugr.ListObject; string dimater = txtDiameter.Value.ToString(); string length = txtLength.Value.ToString(); string model = txtModel2.Text; string massyOr = txtOr.Text; string taper = txtTaper.Text.Trim(); string memo = txtMemo.Text.Trim(); ArrayList list = new ArrayList(); list.Add(dimater); list.Add(length); list.Add(model); list.Add(taper); list.Add(massyOr); if (!CheckMandrel1(list)) { MessageUtil.ShowWarning("存在相同的芯棒直径、长度、芯棒扣型、锥度、空心实心!"); return; } entity.UpdateName = UserInfo.GetUserName(); entity.LenMandrel = (decimal?)Convert.ToDouble(length); entity.MandrelId = dimater; entity.MassyOrHollow = massyOr; entity.Memo = memo; entity.ScrewModel = model; entity.TaperMandrel = taper; string jsonStr = JSONFormat.Format(entity); if (MessageUtil.ShowYesNoAndQuestion("是否修改?") == DialogResult.No) { return; } madrelId = entity.MandrelId; int count = ServerHelper.SetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.update", new object[] { jsonStr }, ob); if (count == 0) { MessageUtil.ShowTips("服务端处理失败!"); return; } else { MessageUtil.ShowWarning("修改成功!", entityGridMandrel); Query(); } } private void Delete() { UltraGridRow ugr = entityGridMandrel.ActiveRow; if (ugr == null) { MessageUtil.ShowWarning("请选择要修改的记录!", entityGridMandrel); return; } ComBaseMandrelEntity entity = (ComBaseMandrelEntity)ugr.ListObject; string jsonStr = JSONFormat.Format(entity); if (MessageUtil.ShowYesNoAndQuestion("是否删除?") == DialogResult.No) { return; } int count = ServerHelper.SetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.delete", new object[] { jsonStr }, ob); if (count == 0) { MessageUtil.ShowTips("服务端处理失败!"); return; } else { MessageUtil.ShowWarning("删除成功!", entityGridMandrel); Query(); } } /// /// 判断主键是否重复 /// /// /// private bool CheckMandrel1(ArrayList list) { DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.checkMandrel1", new object[] { list }, ob); int count = Convert.ToInt32(dt.Rows[0][0].ToString()); if (count == 0) { return true; } else { return false; } } /// /// 判断芯棒直径,长度,芯棒扣型,锥度,实心空心是否相同 /// /// /// private bool CheckMandrel(string mandrel) { DataTable dt = ServerHelper.GetData("com.steering.pss.plnsaleord.processOrder.FrmComBaseMandrel.checkMandrel", new object[] { mandrel }, ob); int count = Convert.ToInt32(dt.Rows[0][0].ToString()); if (count == 0) { return true; } else { return false; } } private bool CheckParams() { if (txtDiameter.Value == null ||txtDiameter.Value.ToString().Equals("") ||Convert.ToDouble(txtDiameter.Value.ToString()) <= 0) { MessageUtil.ShowWarning("请输入芯棒直径!", txtDiameter); return false; } if (txtLength.Value == null || txtLength.Value.ToString().Equals("") || Convert.ToDouble(txtLength.Value.ToString()) < 0) { MessageUtil.ShowWarning("请输入长度!", txtLength); return false; } if (txtModel2.Value == null) { MessageUtil.ShowWarning("请选择芯棒扣型!", txtModel2); return false; } if (txtOr.Value == null) { MessageUtil.ShowWarning("请选择实心空心!", txtOr); return false; } if (txtTaper.Text.Trim().Equals("")) { MessageUtil.ShowWarning("请输入锥度!", txtTaper); return false; } return true; } private void entityGridMandrel_AfterRowActivate(object sender, EventArgs e) { UltraGridRow ugr = entityGridMandrel.ActiveRow; if (ugr == null) { return; } ComBaseMandrelEntity entity = (ComBaseMandrelEntity)ugr.ListObject; txtDiameter.Value = entity.DiameterMandrel; txtLength.Value = entity.LenMandrel; txtModel2.Text = entity.ScrewModel; txtOr.Value = entity.MassyOrHollow; txtTaper.Value = entity.TaperMandrel; txtMemo.Value = entity.Memo; _baseMandrelSpec.CreName = this.UserInfo.GetUserName(); _baseMandrelSpec.MandrelId = ugr.Cells["MandrelId"].Value.ToString(); _baseMandrelSpec.MandDimater = ugr.Cells["DiameterMandrel"].Text.ToString(); _baseMandrelSpec.Query(); } } }