注塑喷涂
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

487 lines
19 KiB

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Configuration;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using grproLib;
using MESClassLibrary.BLL.BasicInfo;
using MESClassLibrary.BLL.Log;
using MESClassLibrary.DAL;
using MESClassLibrary.Model;
using DataTable = System.Data.DataTable;
namespace InjectionSearch
{
public partial class FrmBarCodeSearch : Form
{
public FrmBarCodeSearch()
{
InitializeComponent();
}
private void initProduct()
{
comboBox1.Items.Clear();
ProductBLL bll = new ProductBLL();
DataTable dt = bll.SearchInfoAllByType("2000");
if (dt != null && dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
comboBox1.Items.Add(dt.Rows[i]["StockNo"].ToString() +"--"+dt.Rows[i]["ProductName"].ToString());
}
}
dt.Dispose();
}
private void initBarCode()
{
BarCodeBLL bll = new BarCodeBLL();
glacialList1.Items.Clear();
DataTable dt = bll.SearchBarCode();
if (dt != null && dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
glacialList1.Items.Add(i.ToString());
glacialList1.Items[i].SubItems[0].Text = dt.Rows[i]["BarCode"].ToString();
glacialList1.Items[i].SubItems[1].Text = dt.Rows[i]["ProductName"].ToString();
glacialList1.Items[i].SubItems[2].Text = dt.Rows[i]["PrintType"].ToString();
glacialList1.Items[i].SubItems[3].Text = dt.Rows[i]["PrintTime"].ToString() == "" ? "" : Convert.ToDateTime(dt.Rows[i]["PrintTime"].ToString()).ToString("yyyy-MM-dd HH:mm:ss.fff");
glacialList1.Items[i].SubItems[4].Text = dt.Rows[i]["MaterialName"].ToString();
glacialList1.Items[i].SubItems[5].Text = dt.Rows[i]["BatchNo"].ToString();
}
}
}
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(comboBox1.Text) || comboBox1.Text.Length<10) return;
string stockNo = comboBox1.Text.Substring(0, 10);
ProductBLL bll=new ProductBLL();
BomBLL bombll=new BomBLL();
DataTable dt = bll.SearchInfoByStock(stockNo);
if (dt != null && dt.Rows.Count > 0)
{
textBox1.Text = dt.Rows[0]["PartNo"].ToString();
dt.Dispose();
}
else
{
textBox1.Text = "";
}
DataTable dt1 = bombll.SearchBom(textBox1.Text);
if (dt1 != null && dt1.Rows.Count > 0)
{
textBox2.Text = dt1.Rows[0]["PartNo2"].ToString();
dt.Dispose();
}
else
{
textBox2.Text = "";
}
}
private void FrmBarCodeSearch_Load(object sender, EventArgs e)
{
initProduct();
initBarCode();
comboBox2.Items.Clear();
comboBox2.Items.Add("IM01");
comboBox2.Items.Add("IM02");
comboBox2.Items.Add("IM03");
comboBox2.Items.Add("IM04");
comboBox2.Items.Add("IM05");
comboBox2.Items.Add("IM06");
}
private void label18_Click(object sender, EventArgs e)
{
string code = "";
BarCodeModel md = new BarCodeModel();
BarCodeBLL bll = new BarCodeBLL();
ProductBLL pbll=new ProductBLL();
try
{
if (glacialList1.SelectedItems.Count == 0)
{
MessageBox.Show("请选择要补打的条码!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else
{
GlacialComponents.Controls.GLItem gv;
gv = glacialList1.SelectedItems[0] as GlacialComponents.Controls.GLItem;
code = gv.Text;
DataTable dt = bll.SearchInfoByBarCode(code);
if (dt != null && dt.Rows.Count > 0)
{
md.ID = Guid.NewGuid().ToString();
md.BarCode = code;
md.StationID = Program.StationID;
md.StockNo = dt.Rows[0]["StockNo"].ToString();
md.OneBarCode = dt.Rows[0]["OneBarCode"].ToString();
md.StationID2 = dt.Rows[0]["StationID"].ToString();
md.PrintType = 2;
DataTable pdt = pbll.SearchIsImportByStockNo(md.StockNo);
if (pdt != null && pdt.Rows.Count > 0)
{
if (pdt.Rows[0]["isImport"].ToString() == "1")
{
md.Import = "国产料Kingfa";
}
else
{
md.Import = "";
}
}
//if (md.StockNo == "2200000064" || md.StockNo == "2200000093" || md.StockNo == "2200000096" ||
// md.StockNo == "2200000052")
//{
// md.Import = "国产料Kingfa";
//}
//else
//{
// md.Import = "";
//}
}
dt.Dispose();
bll.Add_Info(md);
#region 打印条码
GridppReport report = new GridppReport();
report.Register("");
report.LoadFromFile(@"D:\P02 - 副本.grf");
report.ConnectionString = ConfigurationManager.ConnectionStrings["report"].ToString();
//report.PrintPreview(true);
report.Print(false);
#endregion
bll.Update_Info(md);
initBarCode();
}
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
}
}
public DateTime GetDateTime()
{
string sql = "";
DateTime time;
DataTable dt;
try
{
sql = @"select getdate() as time";
dt = SqlHelper.ExecuteDataset(SqlHelper.GetConnSting(), CommandType.Text, sql, null).Tables[0];
if (dt != null && dt.Rows.Count > 0)
{
time = Convert.ToDateTime(dt.Rows[0]["time"].ToString());
}
else
{
time = DateTime.Now;
}
return time;
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
return DateTime.Now;
}
}
private static bool IsNumeric(string str)
{
System.Text.RegularExpressions.Regex reg1 = new System.Text.RegularExpressions.Regex(@"^[0-9]\d*$");
return reg1.IsMatch(str);
}
private void label19_Click(object sender, EventArgs e)
{
string code = "", stationID = "", OneCode = "";
string newcode = "", partNo = "", stockNo = "", NewOneCode = "";
try
{
#region 数据合法性判断
if (comboBox2.Text.Trim() == "")
{
MessageBox.Show("请选择机台!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (comboBox1.Text.Trim() == "")
{
MessageBox.Show("请选择产品!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (textBox3.Text.Trim() == "")
{
MessageBox.Show("请输入批次!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (textBox4.Text.Trim() == "")
{
MessageBox.Show("请输入数量!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (!IsNumeric(textBox4.Text.Trim()))
{
MessageBox.Show("数量格式不正确!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
if (Convert.ToInt32(textBox4.Text.Trim()) > 1000)
{
MessageBox.Show("数量不能大于1000!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
#endregion
#region 获取工位编号
StationBLL sbll = new StationBLL();
DataTable sdt = sbll.SearchInfoByNo(comboBox2.Text.Trim());
if (sdt != null && sdt.Rows.Count > 0)
{
stationID = sdt.Rows[0]["StationID"].ToString();
}
sdt.Dispose();
#endregion
DialogResult result = MessageBox.Show("确定手工打印条码?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
if (result == DialogResult.OK)
{
#region 生成条码
ProductBLL pbll = new ProductBLL();
//查询零件号
stockNo = comboBox1.Text.Substring(0, 10);
partNo = textBox1.Text.Trim();
//根据零件号、批次号查找
BarCodeBLL bll = new BarCodeBLL();
BarCodeModel md = new BarCodeModel();
//DataTable dt = bll.SearchSerialNoByBarCode(partNo + "." + textBox3.Text.Trim());
//DataTable dt = bll.SearchInfoByStock(stockNo);
DataTable dt = bll.SearchSerialNoByBarCode(stockNo, textBox3.Text.Trim());
if (dt != null && dt.Rows.Count > 0)
{
OneCode = dt.Rows[0]["OneBarCode"].ToString().Trim();
code = dt.Rows[0]["BarCode"].ToString().TrimEnd();
for (int i = 1; i <= Convert.ToInt32(textBox4.Text.Trim()); i++)
{
newcode = code.Substring(0, code.Length - 4) +
(Convert.ToInt32(code.Substring(code.Length - 4, 4)) + i)
.ToString()
.PadLeft(4, '0');
NewOneCode = OneCode.Substring(0, OneCode.Length - 4) +
(Convert.ToInt32(OneCode.Substring(OneCode.Length - 4, 4)) + i).ToString()
.PadLeft(4, '0');
string[] part = newcode.Split('.');
//存入tb_BarCode表
md.ID = Guid.NewGuid().ToString();
md.StationID = Program.StationID;
md.StationID2 = stationID;
md.OneBarCode = NewOneCode;
md.BarCode = newcode;
md.BatchNo= textBox3.Text.Trim();
md.StockNo = stockNo;
md.PrintType = 1;
DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
if (pdt != null && pdt.Rows.Count > 0)
{
if (pdt.Rows[0]["isImport"].ToString() == "1")
{
md.Import = "国产料Kingfa";
}
else
{
md.Import = "";
}
}
//if (NewOneCode.Substring(0, 10) == "2200000064" ||
// NewOneCode.Substring(0, 10) == "2200000093" ||
// NewOneCode.Substring(0, 10) == "2200000096" ||
// NewOneCode.Substring(0, 10) == "2200000084" ||
// NewOneCode.Substring(0, 10) == "2200000090" ||
// NewOneCode.Substring(0, 10) == "2200000052")
//{
// md.Import = "国产料Kingfa";
//}
//else
//{
// md.Import = "";
//}
if (bll.Add_Info(md))
{
#region 打印条码
GridppReport report = new GridppReport();
report.Register("");
//report.LoadFromFile(@"D:\P02.grf");
report.LoadFromFile(@"D:\P02 - 副本.grf");
report.ConnectionString = ConfigurationManager.ConnectionStrings["report"].ToString();
//report.PrintPreview(true);
report.Print(false);
#endregion
bll.Update_Info(md);
}
}
}
else
{
for (int i = 1; i <= Convert.ToInt32(textBox4.Text.Trim()); i++)
{
newcode = partNo + "." + textBox3.Text.Trim() + "." + i.ToString().PadLeft(4, '0');
NewOneCode = stockNo + textBox3.Text.Trim() + i.ToString().PadLeft(4, '0');
string[] part = newcode.Split('.');
//存入tb_BarCode表
md.ID = Guid.NewGuid().ToString();
md.StationID = Program.StationID;
md.StationID2 = stationID;
md.StockNo = stockNo;
md.OneBarCode = NewOneCode;
md.BarCode = newcode;
md.PrintType = 1;
md.BatchNo = textBox3.Text.Trim();
DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
if (pdt != null && pdt.Rows.Count > 0)
{
if (pdt.Rows[0]["isImport"].ToString() == "1")
{
md.Import = "国产料Kingfa";
}
else
{
md.Import = "";
}
}
bll.Add_Info(md);
#region 打印条码
GridppReport report = new GridppReport();
report.Register("");
//report.LoadFromFile(@"D:\P02.grf");
report.LoadFromFile(@"D:\P02 - 副本.grf");
report.ConnectionString = ConfigurationManager.ConnectionStrings["report"].ToString();
//report.PrintPreview(true);
report.Print(false);
#endregion
bll.Update_Info(md);
}
}
#endregion
initBarCode();
}
else
{
return;
}
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
}
}
private void button1_Click(object sender, EventArgs e)
{
BarCodeBLL bll = new BarCodeBLL();
DataTable dt = null;
try
{
glacialList1.Items.Clear();
if (textBox5.Text.Trim() == "")
{
dt = bll.SearchBarCode();
}
else
{
if (textBox5.Text.Trim().Length == 20)
{
dt = bll.SearchBarCodeByOne(textBox5.Text.Trim());
}
else
{
dt = bll.SearchBarCodeByTwo(textBox5.Text.Trim());
}
}
if (dt != null && dt.Rows.Count > 0)
{
for (int i = 0; i < dt.Rows.Count; i++)
{
glacialList1.Items.Add(i.ToString());
glacialList1.Items[i].SubItems[0].Text = dt.Rows[i]["BarCode"].ToString();
glacialList1.Items[i].SubItems[1].Text = dt.Rows[i]["ProductName"].ToString();
glacialList1.Items[i].SubItems[2].Text = dt.Rows[i]["PrintType"].ToString();
glacialList1.Items[i].SubItems[3].Text = dt.Rows[i]["PrintTime"].ToString() == "" ? "" : Convert.ToDateTime(dt.Rows[i]["PrintTime"].ToString()).ToString("yyyy-MM-dd HH:mm:ss.fff");
glacialList1.Items[i].SubItems[4].Text = dt.Rows[i]["MaterialName"].ToString();
glacialList1.Items[i].SubItems[5].Text = dt.Rows[i]["BatchNo"].ToString();
}
}
}
catch (Exception ex)
{
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
}
}
private void FrmBarCodeSearch_FormClosing(object sender, FormClosingEventArgs e)
{
Application.Exit();
}
}
}