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 com.hnshituo.pur.vo; using Core.Mes.Client.Comm.Server; using Core.Mes.Client.Comm.Tool; using CoreFS.CA06; using Pur.configure; using Pur.Entity; using Pur.Entity.require_planEntiy; namespace Pur.require_plan { public partial class frmPurRequirePlanMAdd : FrmPmsBase { public string tips = "0"; public string requirePlanMId = ""; public string txt_REQORGID = ""; private string strCustomInfo; private string mrId=""; public frmPurRequirePlanMAdd() { InitializeComponent(); } public frmPurRequirePlanMAdd(OpeBase OB,String customInfo) { this.ob = OB; this.strCustomInfo = customInfo; InitializeComponent(); } public frmPurRequirePlanMAdd(OpeBase opeBase, string strCoustomInfo, string mrId) { // TODO: Complete member initialization this.ob = opeBase; this.strCustomInfo = strCoustomInfo; InitializeComponent(); this.mrId = mrId; btn_add.Text = "复制&A"; } private void frmPurRequirePlanMAdd_Load(object sender, EventArgs e) { Init(); } private void Init() { //紧急程度类型 txt_URGENCYTYPE.SelectedIndex = 0; //加载计划类型数据 DataTable dt1 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1221" }, this.ob); if (strCustomInfo == "1")//生产厂 { comm.FilComboboxAdd(txt_RequeType, dt1, "baseCode", "baseName", "validflag NOT in ('0') and baseCode in ('122101')", false, "", ""); txt_auditType.Visible = true; txt_auditType_lab.Visible = true; } else if (strCustomInfo == "2")//供应部 { comm.FilComboboxAdd(txt_RequeType, dt1, "baseCode", "baseName", "validflag NOT in ('0') and baseCode in ('122101')", false, "", ""); //ultraTabControl2.Tabs[1].Visible = false; txt_auditType.Visible = false; txt_auditType_lab.Visible = false; } else//厂区 { comm.FilComboboxAdd(txt_RequeType, dt1, "baseCode", "baseName", "validflag NOT in ('0') and baseCode in ('122104')", false, "", ""); txt_auditType.Visible = true; txt_auditType_lab.Visible = true; } //加载流程类型 DataTable dt8 = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "122601" }, this.ob); comm.FilComboboxAdd(txt_auditType, dt8, "baseCode", "baseName", "validflag NOT in ('0')", false, "", ""); txt_RequeType.SelectedIndex = 0; txt_URGENCYTYPE.SelectedIndex = 0; txt_auditType.SelectedIndex = 0; txt_MRPERIODEND.Enabled = false; txt_REQORGNAME.Text = UserInfo.GetDepartment(); txt_REQORGID = UserInfo.GetDeptid(); if (strCustomInfo == "2") { if (DateTime.Now < DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM/01"))) { txt_MRPERIODEND.Value = DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM")); } else { txt_MRPERIODEND.Value = DateTime.Parse(DateTime.Now.AddMonths(2).ToString("yyyy/MM")); } } else { if (DateTime.Now < DateTime.Parse(DateTime.Now.ToString("yyyy/MM/26"))) { txt_MRPERIODEND.Value = DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM")); } else { txt_MRPERIODEND.Value = DateTime.Parse(DateTime.Now.AddMonths(2).ToString("yyyy/MM")); } } } /// /// 紧急采购允许输入月份 /// /// /// private void txt_URGENCYTYPE_ValueChanged(object sender, EventArgs e)// 紧急采购允许输入月份 { if (txt_URGENCYTYPE.SelectedIndex == 1) { txt_MRPERIODEND.Enabled = true; } else { txt_MRPERIODEND.Enabled = false; txt_MRPERIODEND.Value = DateTime.Now < DateTime.Parse(DateTime.Now.ToString("yyyy/MM/26")) ? DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM")) : DateTime.Parse(DateTime.Now.AddMonths(2).ToString("yyyy/MM")); } } //新增操作 private void btn_add_Click(object sender, EventArgs e) { if (testReqM() == false) { return; } RequirePlanM ReqM = new RequirePlanM(); ReqM.CreateName = UserInfo.GetUserName(); ReqM.CreateUserid = UserInfo.GetUserID(); ReqM.CreateTime = DateTime.Now; if (txt_MRPERIODEND.Enabled == false) { if (strCustomInfo == "2") { ReqM.MrPeriodEnd = DateTime.Now < DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM/01")) ? DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM")) : DateTime.Parse(DateTime.Now.AddMonths(2).ToString("yyyy/MM")); } else { ReqM.MrPeriodEnd = DateTime.Now < DateTime.Parse(DateTime.Now.ToString("yyyy/MM/26")) ? DateTime.Parse(DateTime.Now.AddMonths(1).ToString("yyyy/MM")) : DateTime.Parse(DateTime.Now.AddMonths(2).ToString("yyyy/MM")); } } else { ReqM.MrPeriodEnd = Convert.ToDateTime(txt_MRPERIODEND.Value); } ReqM.UrgencyType = txt_URGENCYTYPE.Value.ToString(); ReqM.ReqOrgName = txt_REQORGNAME.Text.Trim();//申请者机构名称 ReqM.ReqOrgId = txt_REQORGID;//申请者机构ID ReqM.ApplyReqOrgName = UserInfo.GetDepartment(); ReqM.ApplyReqOrgId = UserInfo.GetDeptid(); ReqM.Validflag = "1"; ReqM.RequireType = txt_RequeType.Value.ToString(); ReqM.Status = "1"; ReqM.TenantId = strCustomInfo != "2" ? txt_auditType.Value.ToString().Trim() : null; ReqM.TenantName = strCustomInfo != "2" ? txt_auditType.Text.Trim() : null; if (ReqM.RequireType == "122104") { ReqM.Status = "-2";//子计划 } CoreResult crt = new CoreResult(); if (!String.IsNullOrEmpty(mrId)) { ReqM.MrId = mrId; crt = this.execute("com.hnshituo.pur.requireplan.service.RequirePlanMService", "do_Copy", new object[] { ReqM, strCustomInfo }); } else { crt = this.execute("com.hnshituo.pur.requireplan.service.RequirePlanMService", "insert_id", new object[] { ReqM, strCustomInfo }); } if (crt.Resultcode != 0) { MessageUtil.ShowTips("操作失败! " + crt.Resultmsg); tips = "0"; return; } else { MessageUtil.ShowTips("操作成功! 新增需求计划头:" + crt.Resultmsg); requirePlanMId = crt.Resultmsg; tips = "1"; this.Close(); } } /// /// 需求头信息校验 /// /// private bool testReqM()// 需求头信息校验 { if (txt_MRPERIODEND.Text == "") { MessageUtil.ShowTips("计划月份不能为空!"); txt_MRPERIODEND.Focus(); return false; } if (txt_MRPERIODEND.Enabled == false && (DateTime.Now > DateTime.Parse(DateTime.Now.ToString("yyyy/MM/26")))) { if (MessageUtil.ShowYesNoAndQuestion("需求提报截止日期为每月25号,若提交将默认为下月需求计划。确定新增?") != DialogResult.Yes) { txt_MRPERIODEND.Focus(); return false; } } if (txt_RequeType.Value == null) { MessageUtil.ShowTips("请选择需求计划类型!"); txt_RequeType.Focus(); return false; } if (txt_URGENCYTYPE.SelectedIndex == -1) { MessageUtil.ShowTips("请选择紧急程度类型!"); txt_URGENCYTYPE.Focus(); return false; } if (String.IsNullOrEmpty(txt_REQORGID)) { MessageUtil.ShowTips("请选择使用单位!"); txt_REQORGNAME.Focus(); return false; } if (String.IsNullOrEmpty(txt_REQORGNAME.Text.Trim())) { MessageUtil.ShowTips("请选择使用单位!"); txt_REQORGNAME.Focus(); return false; } if (strCustomInfo != "2") { if (txt_auditType.SelectedIndex == -1) { MessageUtil.ShowTips("请选择审批流程类型!"); txt_auditType.Focus(); return false; } } else { if (txt_REQORGID.Length >= 9) { if (txt_REQORGID.Substring(0, 9) == "002001029") { MessageUtil.ShowTips("替生产厂提报的需求计划不能选【供应部】和下面的科室作为申请单位!"); txt_REQORGNAME.Focus(); return false; } } } return true; } private void txt_REQORGNAME_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e) { frmdepartment frm = new frmdepartment(this.ob); //frm.StartPosition = FormStartPosition.Manual; //frm.Location = publicPms.getShowLocation(frm); frm.ShowDialog(); String strdeptId = frm.BuyerUnitCode; String strDeptName = frm.Fulltext; if (!String.IsNullOrEmpty(strdeptId) && !String.IsNullOrEmpty(strDeptName)) { txt_REQORGID = strdeptId; txt_REQORGNAME.Text = strDeptName; } } } }