Пример #1
0
        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();
        }
Пример #2
0
        /// <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);
            }
        }
Пример #3
0
        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
        }
Пример #4
0
        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;
            }
        }
Пример #5
0
        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();
        }