private void 保存toolStripButton_Click(object sender, EventArgs e) { if (!CheckControl()) { return; } YX_LowestMarketPrice lowest = new YX_LowestMarketPrice(); lowest.Date = ServerTime.Time; lowest.GoodsID = Convert.ToInt32(txtGoodsCode.Tag.ToString()); lowest.Price = numLowestPrice.Value; lowest.Rater = BasicInfo.LoginID; lowest.Remark = txtRemark.Text; lowest.ClientID = txtClient.Tag.ToString(); lowest.CommunicateID = Convert.ToInt32(tbsClientGoodsCode.Tag); lowest.TerminalPrice = numTerminalPrice.Value; if (!m_LowestPriceServer.InsertAndUpdateData(lowest, out m_error)) { MessageDialog.ShowPromptMessage(m_error); return; } RefreshDataGridView(); }
/// <summary> /// 添加或修改数据 /// </summary> /// <param name="lowestMarketProce">YX_LowestMarketPrice数据集</param> /// <param name="error">错误信息</param> /// <returns>成功返回True,失败返回false</returns> public bool InsertAndUpdateData(YX_LowestMarketPrice lowestMarketProce, out string error) { error = ""; try { DepotManagementDataContext dataContxt = CommentParameter.DepotDataContext; var result = from a in dataContxt.YX_LowestMarketPrice where a.GoodsID == lowestMarketProce.GoodsID && a.ClientID == lowestMarketProce.ClientID select a; if (result.Count() > 0) { YX_LowestMarketPrice yx = result.Single(); yx.Date = lowestMarketProce.Date; yx.Price = lowestMarketProce.Price; yx.ClientID = lowestMarketProce.ClientID; yx.Rater = lowestMarketProce.Rater; yx.CommunicateID = lowestMarketProce.CommunicateID; yx.Remark = lowestMarketProce.Remark; yx.TerminalPrice = lowestMarketProce.TerminalPrice; } else { dataContxt.YX_LowestMarketPrice.InsertOnSubmit(lowestMarketProce); } dataContxt.SubmitChanges(); return(true); } catch (Exception ex) { error = ex.Message; return(false); } }
private void 导入toolStripButton_Click(object sender, EventArgs e) { DataTable dtTemp = ExcelHelperP.RenderFromExcel(openFileDialog1); if (dtTemp == null) { //MessageDialog.ShowPromptMessage(m_error); return; } if (!CheckTable(dtTemp)) { return; } DataTable dtClone = dtTemp.Clone(); foreach (DataRow dr in dtTemp.Rows) { YX_LowestMarketPrice lowest = new YX_LowestMarketPrice(); int GoodsID = m_basicGoodsServer.GetGoodsIDByGoodsCode(dr["容大代码"].ToString(), dr["零件名称"].ToString(), dr["规格"].ToString()); if (GoodsID != 0 && GoodsID != 7126) { lowest.GoodsID = GoodsID; } else { AddErrorInfo(ref dtClone, dr); continue; } string clientCode = m_clientServer.GetClientCode(dr["客户名称"].ToString()); if (clientCode != "") { lowest.ClientID = clientCode; } else { AddErrorInfo(ref dtClone, dr); continue; } int?communicateID = m_LowestPriceServer.GetCommunicateID(lowest.ClientID, dr["主机厂图号型号"].ToString(), dr["主机厂物品名称"].ToString(), lowest.GoodsID, out m_error); if (communicateID != null) { lowest.CommunicateID = communicateID; } else { AddErrorInfo(ref dtClone, dr); continue; } lowest.Date = ServerTime.Time; lowest.Price = Convert.ToDecimal(dr["配件含税单价(元)"].ToString()); lowest.TerminalPrice = Convert.ToDecimal(dr["配件终端最低价(元)"].ToString()); lowest.Rater = BasicInfo.LoginID; lowest.Remark = dr["备注"].ToString(); if (!m_LowestPriceServer.InsertAndUpdateData(lowest, out m_error)) { AddErrorInfo(ref dtClone, dr); continue; } } if (dtClone.Rows.Count > 0) { FormShowYXLowestPriceError form = new FormShowYXLowestPriceError(dtTemp, null); form.ShowDialog(); } else { MessageDialog.ShowPromptMessage("导入成功"); } #region 逻辑代码修改 Modify by cjb on 2015.11.18 //bool flag = false; ////string GoodsName = ""; //for (int i = 0; i < dtTemp.Rows.Count; i++) //{ // YX_LowestMarketPrice lowest = new YX_LowestMarketPrice(); // lowest.Date = ServerTime.Time; // int GoodsID = m_basicGoodsServer.GetGoodsIDByGoodsCode( // dtTemp.Rows[i]["容大代码"].ToString(), dtTemp.Rows[i]["零件名称"].ToString(), dtTemp.Rows[i]["规格"].ToString()); // if (GoodsID != 0 && GoodsID != 7126) // { // lowest.GoodsID = GoodsID; // } // else if (GoodsID == 7126) // { // dtTemp.Rows.RemoveAt(i); // i--; // continue; // } // else // { // //GoodsName += "容大代码为:" + dtTemp.Rows[i]["容大代码"].ToString() + ";零件名称:" + // // dtTemp.Rows[i]["零件名称"].ToString() + "的零件有误,系统没有该零件;\r\n"; // flag = true; // continue; // } // lowest.Price = Convert.ToDecimal(dtTemp.Rows[i]["配件含税单价(元)"].ToString()); // lowest.TerminalPrice = Convert.ToDecimal(dtTemp.Rows[i]["配件终端最低价(元)"].ToString()); // lowest.Rater = BasicInfo.LoginID; // lowest.Remark = dtTemp.Rows[i]["备注"].ToString(); // string clientCode = m_clientServer.GetClientCode(dtTemp.Rows[i]["客户名称"].ToString()); // if (clientCode != "") // { // lowest.ClientID = clientCode; // string communicateID = m_LowestPriceServer.GetCommunicateID(clientCode, dtTemp.Rows[i]["主机厂图号型号"].ToString(), // dtTemp.Rows[i]["主机厂物品名称"].ToString(), GoodsID, out m_error); // if (communicateID != "") // { // lowest.CommunicateID = communicateID; // } // else // { // flag = true; // continue; // } // } // else // { // flag = true; // continue; // } // if (!m_LowestPriceServer.InsertAndUpdateData(lowest, out m_error)) // { // flag = true; // } // else // { // dtTemp.Rows.RemoveAt(i); // i--; // } //} //if (flag) //{ // FormShowYXLowestPriceError form = new FormShowYXLowestPriceError(dtTemp,null); // form.ShowDialog(); //} //else //{ // MessageDialog.ShowPromptMessage("导入成功"); //} #endregion }
private void tbsUseClient_OnCompleteSearch() { tbsUseClient.Text = tbsUseClient.DataResult["主机厂"].ToString(); tbsUseClient.Tag = tbsUseClient.DataResult["客户编码"].ToString(); try { if (cbCarLoad.Checked) { for (int i = 0; i < m_listMarketPart.Count; i++) { YX_LowestMarketPrice lowest = m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(m_listMarketPart[i].GoodsID), out m_error); if (lowest != null) { m_listMarketPart[i].最低定价 = lowest.Price; m_listMarketPart[i].销售单价 = lowest.Price; } else { MessageDialog.ShowPromptMessage("请在最低定价表中设置该整车厂【" + m_listMarketPart[i].图号型号 + m_listMarketPart[i].物品名称 + "】的最低价格!"); cbCarLoad.Checked = false; tbsUseClient.Text = ""; tbsUseClient.Tag = ""; 销售toolStripButton.Enabled = false; return; } } txtLowestPrice.Text = m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(txtGoodsCode.Tag.ToString()), out m_error).Price.ToString(); } else { txtLowestPrice.Text = m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(txtGoodsCode.Tag.ToString()), out m_error).TerminalPrice.ToString(); for (int i = 0; i < m_listMarketPart.Count; i++) { YX_LowestMarketPrice lowest = m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(m_listMarketPart[i].GoodsID), out m_error); if (lowest != null) { m_listMarketPart[i].最低定价 = lowest.Price; } else { MessageDialog.ShowPromptMessage("请在最低定价表中设置该整车厂【" + m_listMarketPart[i].图号型号 + m_listMarketPart[i].物品名称 + "】的最低价格!"); cbCarLoad.Checked = false; tbsUseClient.Text = ""; tbsUseClient.Tag = ""; 销售toolStripButton.Enabled = false; return; } } } txtOutName.Text = m_LowestPriceServer.GetCommunicateInfo(m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(txtGoodsCode.Tag.ToString()), out m_error).CommunicateID.ToString(), out m_error).CommunicateGoodsName; tbsOutCode.Text = m_LowestPriceServer.GetCommunicateInfo(m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(txtGoodsCode.Tag.ToString()), out m_error).CommunicateID.ToString(), out m_error).CommunicateGoodsCode; dataGridView1.DataSource = m_listMarketPart; dataGridView1.Refresh(); } catch (Exception) { MessageDialog.ShowPromptMessage("最低定价中没有该零件!"); tbsUseClient.Text = ""; tbsUseClient.Tag = ""; cbCarLoad.Checked = false; return; } }
private void 销售toolStripButton_Click(object sender, EventArgs e) { if (txtRecorder.Text == BasicInfo.LoginName && m_marketPartBillServer.GetDataByBillNo(m_billNo).Rows[0]["单据状态"].ToString() != "已完成") { if (txtClient.Text.Trim() != "" && txtClient.Text.Trim() != "全部" && txtClient.Text.Trim() != "其它") { S_MarketingPartBill bill = new S_MarketingPartBill(); bill.ClientID = txtClient.Tag.ToString(); bill.Remark = txtMainRemark.Text; bill.Recorder = BasicInfo.LoginID; bill.RecordTime = ServerTime.Time; bill.Status = "等待主管审核"; bill.BillNo = m_billNo; bill.AssociatedBillNo = txtAssociated.Text; if (cbCarLoad.Checked) { bill.IsCarLoad = true; if (tbsUseClient.Text.Trim() == "") { MessageDialog.ShowPromptMessage("请选择套用哪个整车厂的价格!"); return; } else { bill.CiteTerminalClient = tbsUseClient.Tag.ToString(); for (int i = 0; i < m_listMarketPart.Count; i++) { YX_LowestMarketPrice lowest = m_LowestPriceServer.GetDataByClientCode(tbsUseClient.Tag.ToString(), Convert.ToInt32(m_listMarketPart[i].GoodsID), out m_error); if (lowest != null) { m_listMarketPart[i].最低定价 = lowest.Price; m_listMarketPart[i].销售单价 = lowest.Price; } else { MessageDialog.ShowPromptMessage("请在最低定价表中设置该整车厂【" + m_listMarketPart[i].图号型号 + m_listMarketPart[i].物品名称 + "】的最低价格!"); 销售toolStripButton.Enabled = false; cbCarLoad.Checked = false; tbsUseClient.Text = ""; tbsUseClient.Tag = ""; return; } } } } else { bill.IsCarLoad = false; //什么意思 没搞明白? by cjb on 2015.10.19 if (Convert.ToDecimal(txtLowestPrice.Text) > numSellUnitPrice.Value) { MessageDialog.ShowPromptMessage("请重新填写销售价格!"); return; } } if (!m_marketPartBillServer.UpdateData(bill, m_listMarketPart, "销售", out m_error)) { MessageDialog.ShowPromptMessage(m_error); return; } else { MessageDialog.ShowPromptMessage("确认成功!"); if (BasicInfo.DeptCode.Contains("YX")) { m_billMessageServer.PassFlowMessage(m_billNo, string.Format("【客户名称】:{0} ※※※ 等待【主管】处理", txtClient.Text), BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptDirectorRoleName(BasicInfo.DeptCode).ToList()); } else { m_billMessageServer.PassFlowMessage(m_billNo, string.Format("【客户名称】:{0} ※※※ 等待【负责人】处理", txtClient.Text), BillFlowMessage_ReceivedUserType.角色, m_billMessageServer.GetDeptPrincipalRoleName(BasicInfo.DeptCode).ToList()); } } } else { MessageDialog.ShowPromptMessage("客户不正确,请重新选择!"); return; } } else { MessageDialog.ShowPromptMessage("您不是销售人员【" + txtRecorder.Text + "】或单据已完成,不能进行此操作!"); return; } this.Close(); }