private void btn_save_Click(object sender, EventArgs e) { if (ProjectId == string.Empty) { MessageBox.Show("请选择项目"); return; } if (Str_Area == string.Empty) { MessageBox.Show("请选择区域"); return; } if (ActivityName == string.Empty) { MessageBox.Show("请选择分项"); return; } string Site = cmb_site.SelectedValue.ToString(); if (Site == string.Empty) { MessageBox.Show("请选择域"); return; } int rowcou = dgv1.RowCount; if (rowcou == 0) { MessageBox.Show("请选择所要申请的材料", "操作提示"); return; } rowcou = dgv1.RowCount; //for (int i = 0; i < rowcou; i++) //{ // if (dgv1.Rows[i].Cells["序号"].Value == null) // { // MessageBox.Show("第" + (i + 1) + "行请填写材料", "提示"); // return; // } //} SetRowNo(); for (int i = 0; i < rowcou; i++) { #region 检查必填项以及数据的合法性 string rowid = dgv1.Rows[i].Cells["行"].Value.ToString(); if (dgv1.Rows[i].Cells["申请数量"].Value != null) { if (!BaseClass.validateNum(dgv1.Rows[i].Cells["申请数量"].Value.ToString().Trim())) { MessageBox.Show("第 " + rowid + " 行申请数量请填写数字", "提示"); dgv1.Rows[i].Selected = true; return; } if (dgv1.Rows[i].Cells["申请数量"].Value.ToString().Trim().Contains("-")) { MessageBox.Show("第 " + rowid + " 行申请数量为负,请检查", "提示"); dgv1.Rows[i].Selected = true; return; } } else { MessageBox.Show("第 " + rowid + " 行请填写申请数量", "提示"); //dgv1.Rows[i].Selected = true; dgv1.CurrentCell = dgv1.Rows[i].Cells["申请数量"]; return; } if (dgv1.Rows[i].Cells["MEO_ERP"].Value != null) { if (!BaseClass.validateNum(dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString().Trim())) { MessageBox.Show("第 " + rowid + " 行MEO号请填写数字", "提示"); dgv1.Rows[i].Selected = true; return; } } else { //if (MEOID != "0") //{ // MessageBox.Show("第 " + rowid + " 行请填写MEO号", "提示"); // //dgv1.Rows[i].Selected = true; // dgv1.CurrentCell = dgv1.Rows[i].Cells["MEO_ERP"]; // return; //} } if (dgv1.Rows[i].Cells["需求日期"].Value == null) { MessageBox.Show("第 " + rowid + " 行请填写需求日期", "提示"); dgv1.Rows[i].Selected = true; return; } if (dgv1.Rows[i].Cells["需求原因"].Value == null) { MessageBox.Show("第 " + rowid + " 行请填写需求原因", "提示"); dgv1.Rows[i].Selected = true; return; } if (dgv1.Rows[i].Cells["需求日期"].Value != null) { if (Convert.ToDateTime(dgv1.Rows[i].Cells["需求日期"].Value.ToString()) < DateTime.Today) { MessageBox.Show("第 " + rowid + " 行需求日期不能小于当前日期", "提示"); dgv1.Rows[i].Selected = true; return; } } if (dgv1.Rows[i].Cells["MEO_ERP"].Value != null) { string partno = dgv1.Rows[i].Cells["零件号"].Value.ToString(); if (MEOsub.meomssExistERP(dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString(), partno) == 0) { MessageBox.Show("第 " + rowid + " 行ERP中的MEO号不存在", "提示"); dgv1.Rows[i].Selected = true; return; } } #endregion } MEOmain MM_MEO = new MEOmain(); string contractno = cmb_site.SelectedValue.ToString(); MM_MEO.CONTRACT = contractno; string drawinfor = txt_designcode.Text.Trim(); MM_MEO.SYSTEM_ID = Str_Area; MM_MEO.REQUIRE_NO = MakeMEOManual(int.Parse(cmb_discipline.SelectedValue.ToString())); MM_MEO.INFORMATION = drawinfor; MM_MEO.CREATER = User.cur_user; MM_MEO.PARTTYPE_ID = Str_FX; MM_MEO.DISCIPLINEID = cmb_discipline.SelectedValue.ToString(); MM_MEO.PROJECT_ID = ProjectId; MM_MEO.ECPROJECTID = ProjectSystem.FindProjectid(ProjectId).ToString(); MM_MEO.ERP_DISCIPLINE = Str_Discipline; MM_MEO.ERP_PARTTYPE = ActivityName; #region 新增保存MEO if (MEOID == "0") { int mmreqid = MM_MEO.REQUIRE_Add(); if (mmreqid > 0) { #region 保存MEO从表 for (int i = 0; i < rowcou; i++) { //string partid = dgv1.Rows[i].Cells["序号"].Value.ToString(); string partno = dgv1.Rows[i].Cells["零件号"].Value.ToString(); string unitmeas = dgv1.Rows[i].Cells["单位"].Value.ToString(); string part_desc = dgv1.Rows[i].Cells["零件描述"].Value.ToString(); string reqdate = dgv1.Rows[i].Cells["需求日期"].Value.ToString(); string reqreason = dgv1.Rows[i].Cells["需求原因"].Value.ToString(); string preQty = dgv1.Rows[i].Cells["申请数量"].Value.ToString().Trim(); string remark = dgv1.Rows[i].Cells["备注"].Value.ToString(); decimal fpreQty = decimal.Parse(preQty); MEOsub MM_submeo = new MEOsub(); MM_submeo.REQUIRE_QTY = decimal.Round(fpreQty, 2); //MM_submeo.PART_ID = int.Parse(partid); MM_submeo.REQUIRE_DATE = Convert.ToDateTime(reqdate); MM_submeo.REASON_CODE = reqreason; MM_submeo.CREATER = User.cur_user; MM_submeo.REQUIRE_ID = mmreqid; MM_submeo.PROJECT_ID = ProjectId; MM_submeo.PART_NO = partno; MM_submeo.UNIT_MEAS = unitmeas; MM_submeo.PART_NAME = part_desc; MM_submeo.REMARK = remark; MM_submeo.REQUIRELINE_Add(); } MEOID = mmreqid.ToString(); MessageBox.Show("保存MEO成功!", "提示"); lbl_manual.Visible = true; tb_manul.Visible = true; tb_manul.Text = MM_MEO.REQUIRE_NO; return; #endregion } else { MessageBox.Show("保存失败!", "提示"); return; } } #endregion #region 更新保存MEO //if (MEOID != "0") //{ // MM_MEO.REQUIRE_ID = int.Parse(MEOID); // MM_MEO.REQUIRE_Update(); // MM_MEO.MEODelete(int.Parse(MEOID)); // #region 更新保存MEO从表 // for (int i = 0; i < rowcou; i++) // { // //string partid = dgv1.Rows[i].Cells["序号"].Value.ToString(); // string reqdate = dgv1.Rows[i].Cells["需求日期"].Value.ToString(); // string reqreason = dgv1.Rows[i].Cells["需求原因"].Value.ToString(); // string preQty = dgv1.Rows[i].Cells["申请数量"].Value.ToString().Trim(); // string meonoerp = ""; // if (dgv1.Rows[i].Cells["MEO_ERP"].Value != null) // { // meonoerp = dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString().Trim(); // } // decimal fpreQty = decimal.Parse(preQty); // MEOsub MM_submeo = new MEOsub(); // MM_submeo.REQUIRE_QTY = decimal.Round(fpreQty, 2); // //MM_submeo.PART_ID = int.Parse(partid); // MM_submeo.REQUIRE_DATE = Convert.ToDateTime(reqdate); // MM_submeo.REASON_CODE = reqreason; // MM_submeo.CREATER = User.cur_user; // MM_submeo.REQUIRE_ID = int.Parse(MEOID); // MM_submeo.PROJECT_ID = ProjectId; // MM_submeo.MEO_ERP = meonoerp; // MM_submeo.REQUIRELINE_Add(); // } // MessageBox.Show("保存MEO成功!", "提示"); // #endregion //} #endregion // QuerydataBind(); }
private void btn_save_Click(object sender, EventArgs e) { if (dgv1.RowCount < 1) { return; } if (ProjectId == string.Empty) { MessageBox.Show("请选择项目"); return; } int rowcou = dgv1.RowCount; if (rowcou == 0) { MessageBox.Show("请选择所要下发的材料", "操作提示"); return; } rowcou = dgv1.RowCount; //for (int i = 0; i < rowcou; i++) //{ // if (dgv1.Rows[i].Cells["序号"].Value == null) // { // MessageBox.Show("第" + (i + 1) + "行请填写材料", "提示"); // return; // } //} SetRowNo(); try { for (int i = 0; i < rowcou; i++) { #region 检查必填项以及数据的合法性 string rowid = dgv1.Rows[i].Cells["行"].Value.ToString(); if (dgv1.Rows[i].Cells["需求数量"].Value != null) { if (!BaseClass.validateNum(dgv1.Rows[i].Cells["需求数量"].Value.ToString().Trim())) { MessageBox.Show("第 " + rowid + " 行需求数量请填写数字", "提示"); dgv1.Rows[i].Selected = true; return; } if (dgv1.Rows[i].Cells["需求数量"].Value.ToString().Trim().Contains("-")) { MessageBox.Show("第 " + rowid + " 行需求数量为负,请检查", "提示"); dgv1.Rows[i].Selected = true; return; } } else { MessageBox.Show("第 " + rowid + " 行请填写需求数量", "提示"); //dgv1.Rows[i].Selected = true; dgv1.CurrentCell = dgv1.Rows[i].Cells["需求数量"]; return; } //if (dgv1.Rows[i].Cells["MEO_ERP"].Value != null) //{ // if (!BaseClass.validateNum(dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString().Trim())) // { // MessageBox.Show("第 " + rowid + " 行MEO号请填写数字", "提示"); // dgv1.Rows[i].Selected = true; // return; // } //} //else //{ // //if (MEOID != "0") // //{ // // MessageBox.Show("第 " + rowid + " 行请填写MEO号", "提示"); // // //dgv1.Rows[i].Selected = true; // // dgv1.CurrentCell = dgv1.Rows[i].Cells["MEO_ERP"]; // // return; // //} //} if (dgv1.Rows[i].Cells["需求日期"].Value == null) { MessageBox.Show("第 " + rowid + " 行请填写需求日期", "提示"); dgv1.Rows[i].Selected = true; return; } //if (dgv1.Rows[i].Cells["需求日期"].Value != null) //{ // if (Convert.ToDateTime(dgv1.Rows[i].Cells["需求日期"].Value.ToString()) < DateTime.Today) // { // MessageBox.Show("第 " + rowid + " 行需求日期不能小于当前日期", "提示"); // dgv1.Rows[i].Selected = true; // return; // } //} if (dgv1.Rows[i].Cells["需求原因"].Value == null) { MessageBox.Show("第 " + rowid + " 行请填写需求原因", "提示"); dgv1.Rows[i].Selected = true; return; } if (dgv1.Rows[i].Cells["MEO_ERP"].Value != null) { string partno = dgv1.Rows[i].Cells["零件号"].Value.ToString(); if (MEOsub.meomssExistERP(dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString(), partno) == 0) { MessageBox.Show("第 " + rowid + " 行ERP中的MEO号不存在", "提示"); dgv1.Rows[i].Selected = true; return; } } #endregion } for (int i = 0; i < rowcou; i++) { #region 循环保存数据 string Rationid = dgv1.Rows[i].Cells["Ration_id"].Value.ToString(); string contractno = cmb_site.SelectedValue.ToString(); string Partno = dgv1.Rows[i].Cells["零件号"].Value.ToString(); Decimal Reqqty = Decimal.Parse(dgv1.Rows[i].Cells["需求数量"].Value.ToString()); DateTime ReqDate = Convert.ToDateTime(dgv1.Rows[i].Cells["需求日期"].Value.ToString()); //string purpose = txt_purpose.Text.Trim().ToString(); string blockId = cmb_block.SelectedValue.ToString(); string ReasonCode = dgv1.Rows[i].Cells["需求原因"].Value.ToString(); //string DesignCode = txt_designcode.Text.Trim().ToString(); string ReqNo = dgv1.Rows[i].Cells["MEO_ERP"].Value.ToString(); string remark = dgv1.Rows[i].Cells["备注"].Value.ToString(); //string isInventory = chb_useInv.Checked == true ? "是" : "否"; string Partname = dgv1.Rows[i].Cells["零件描述"].Value.ToString(); string zyname = dgv1.Rows[i].Cells["dt_zy"].Value.ToString(); string qyname = dgv1.Rows[i].Cells["dt_qy"].Value.ToString(); string fxname = dgv1.Rows[i].Cells["dt_fx"].Value.ToString(); string zlname = dgv1.Rows[i].Cells["dt_zl"].Value.ToString(); Ration mp = new Ration(); mp.PROJECT_ID = ProjectId; mp.RATION_ID = Convert.ToInt32(Rationid); mp.PART_NO = Partno; mp.ISSUED_QTY = decimal.Round(Reqqty, 2); mp.ISSUED_DATE = ReqDate; //mp.IF_INVENTORY = isInventory; //mp.PURPOSE = purpose; mp.BLOCK_ID = blockId; mp.REASON_CODE = ReasonCode; //mp.DESIGN_CODE = DesignCode; mp.REMARK = remark; mp.INFORMATION = remark; mp.CONTRACT = contractno; mp.CREATER = User.cur_user; mp.PART_NAME = Partname; mp.ECPROJECTID = ecprojectid; mp.PART_ZONE = qyname; mp.PART_FX = fxname; mp.PART_DISCIPLINE = zyname; mp.PART_TYPE = zlname; XmlOper.setXML("Block", blockId); if (Rationid != "0") { //mp.RATION_ID = Convert.ToInt32(lbl_rationid.Text); int n = mp.Update(); } else { int n = mp.Add(); } #endregion } MessageBox.Show("保存成功!!!"); } catch (Exception err) { MessageBox.Show("错误原因:" + err.Message, "错误提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information); } // QuerydataBind(); }