|
|
|
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;
|
|
|
|
using MESClassLibrary.BLL.BasicInfo;
|
|
|
|
using MESClassLibrary.BLL.Injection;
|
|
|
|
using MESClassLibrary.BLL.Inspection;
|
|
|
|
using MESClassLibrary.BLL.Log;
|
|
|
|
using MESClassLibrary.BLL.TruckBox;
|
|
|
|
using MESClassLibrary.DAL;
|
|
|
|
using MESClassLibrary.EFModel;
|
|
|
|
using MESClassLibrary.Model;
|
|
|
|
using DataTable = System.Data.DataTable;
|
|
|
|
|
|
|
|
namespace InjectionSearch
|
|
|
|
{
|
|
|
|
public partial class FrmBarCodeSearch2408 : Form
|
|
|
|
{
|
|
|
|
private UniqueBll _uniqueBll = new UniqueBll();
|
|
|
|
private BasicBLL1 _basicBLL1 = new BasicBLL1();
|
|
|
|
private InjectionBoxBLL _injectionBoxBLL = new InjectionBoxBLL();
|
|
|
|
private BarCodeBLL _bll = new BarCodeBLL();
|
|
|
|
private WmsBLL _wmsBll = new WmsBLL();
|
|
|
|
private string _lastBoxNo = string.Empty;
|
|
|
|
public FrmBarCodeSearch2408()
|
|
|
|
{
|
|
|
|
InitializeComponent();
|
|
|
|
this.Size = new Size(1280, 1024);
|
|
|
|
}
|
|
|
|
|
|
|
|
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]["CreateTime"].ToString() == "" ? "" : Convert.ToDateTime(dt.Rows[i]["CreateTime"].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();
|
|
|
|
glacialList1.Items[i].SubItems[0].Tag = dt.Rows[i]["BoxNo"].ToString();
|
|
|
|
glacialList1.Items[i].SubItems[1].Tag = dt.Rows[i]["TableName"].ToString();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
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();
|
|
|
|
|
|
|
|
string currentSize = string.Empty;
|
|
|
|
List<string> list = GetProductBoxSize(dt.Rows[0]["PartNo"].ToString(), ref currentSize);
|
|
|
|
comBoxSizeL.DataSource = list;
|
|
|
|
comBoxSizeL.SelectedItem = currentSize;
|
|
|
|
}
|
|
|
|
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");
|
|
|
|
comboBox2.Items.Add("IM07");
|
|
|
|
comboBox2.Items.Add("IM08");
|
|
|
|
comboBox2.Items.Add("IM09");
|
|
|
|
comboBox2.Items.Add("IM10");
|
|
|
|
comboBox2.Items.Add("IM11");
|
|
|
|
comboBox2.Items.Add("IM12");
|
|
|
|
comboBox2.Items.Add("IM13");
|
|
|
|
comboBox2.Items.Add("IM14");
|
|
|
|
comboBox2.Items.Add("IM15");
|
|
|
|
comboBox2.Items.Add("IM16");
|
|
|
|
comboBox2.Items.Add("IM17");
|
|
|
|
comboBox2.Items.Add("IM18");
|
|
|
|
comboBox2.Items.Add("IM19");
|
|
|
|
comboBox2.Items.Add("IM20");
|
|
|
|
GetClass();
|
|
|
|
textBox3.Text = Program.ProductDate.Substring(2, 2) + Program.ProductDate.Substring(5, 2) +
|
|
|
|
Program.ProductDate.Substring(8, 2); //批次
|
|
|
|
|
|
|
|
//comBoxSizeL.DataSource = _basicBLL1.GetPackageSize();
|
|
|
|
//comBoxSizeL.DisplayMember = "describe";
|
|
|
|
//comBoxSizeL.ValueMember = "Count";
|
|
|
|
}
|
|
|
|
|
|
|
|
private void GetClass()
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
DateTime aa = GetDateTime();
|
|
|
|
|
|
|
|
if (GetDateTime().Hour >= 8 && GetDateTime().Hour < 20)
|
|
|
|
{
|
|
|
|
Program.Shift = "A班";
|
|
|
|
Program.ProductDate = aa.ToString("yyyy-MM-dd");
|
|
|
|
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Program.Shift = "B班";
|
|
|
|
if (GetDateTime().Hour >= 0 && GetDateTime().Hour < 8)
|
|
|
|
{
|
|
|
|
Program.ProductDate = aa.AddDays(-1).ToString("yyyy-MM-dd");
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
Program.ProductDate = aa.ToString("yyyy-MM-dd");
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void label18_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
string code = "",name="";
|
|
|
|
BarCodeModel md = new BarCodeModel();
|
|
|
|
BarCodeBLL bll = new BarCodeBLL();
|
|
|
|
ProductBLL pbll=new ProductBLL();
|
|
|
|
string filename = "", partNo = "", OneCode="";
|
|
|
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
string[] aa = code.Split('.');
|
|
|
|
partNo = aa[0];
|
|
|
|
|
|
|
|
DataTable dt = bll.SearchInfoByBarCode(code);
|
|
|
|
if (dt != null && dt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
name = dt.Rows[0]["ProductName"].ToString();
|
|
|
|
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 (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
//{
|
|
|
|
// return;
|
|
|
|
//}
|
|
|
|
if (SaveBarCode(md, "tb_BarCode5", false) == false)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
#region 打印条码
|
|
|
|
PlasticBLL plbll = new PlasticBLL();
|
|
|
|
|
|
|
|
//filename = System.AppDomain.CurrentDomain.BaseDirectory + "单个条码.grf";
|
|
|
|
filename = System.AppDomain.CurrentDomain.BaseDirectory + PrintMoudleName();
|
|
|
|
DataTable headTable = new DataTable();
|
|
|
|
headTable.Columns.Add("PrintTime");
|
|
|
|
headTable.Columns.Add("PartNo");
|
|
|
|
headTable.Columns.Add("PartName");
|
|
|
|
headTable.Columns.Add("OneBarCode");
|
|
|
|
headTable.Columns.Add("BarCode");
|
|
|
|
DataRow row = headTable.NewRow();
|
|
|
|
row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
row["PartNo"] = partNo;
|
|
|
|
row["PartName"] = name;
|
|
|
|
row["OneBarCode"] = md.OneBarCode;
|
|
|
|
row["BarCode"] = code;
|
|
|
|
|
|
|
|
|
|
|
|
string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
rp.Report.Print(false);
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
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 = "",planID="";
|
|
|
|
string newcode = "", partNo = "", stockNo = "", NewOneCode = "";
|
|
|
|
string filename = "", printName = "", PartName = "", IsSupply="",QLevel="",ProductNature="",IsPrint="";
|
|
|
|
|
|
|
|
ProductBLL pbll = new ProductBLL();
|
|
|
|
BarCodeBLL bll = new BarCodeBLL();
|
|
|
|
BarCodeModel md = new BarCodeModel();
|
|
|
|
InjectionPlanBLL planbll = new InjectionPlanBLL();
|
|
|
|
|
|
|
|
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()) > 100)
|
|
|
|
{
|
|
|
|
MessageBox.Show("数量不能大于100!", "提示", 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
|
|
|
|
|
|
|
|
#region 获取对应工位的当前计划信息
|
|
|
|
|
|
|
|
|
|
|
|
DataTable plandt = planbll.SearchInfoByName(comboBox2.Text);
|
|
|
|
if (plandt != null && plandt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
planID = plandt.Rows[0]["InjectionPlanID"].ToString();
|
|
|
|
ProductNature = plandt.Rows[0]["ProductNature"].ToString();
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
int packageSize = 0;
|
|
|
|
string msg = "确定手工打印条码?";
|
|
|
|
if (cboxHandBox.Checked)
|
|
|
|
{
|
|
|
|
if (comBoxSizeL.SelectedItem == null)
|
|
|
|
{
|
|
|
|
MessageBox.Show("选中打印箱码,请先选择箱码规格!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
string size = comBoxSizeL.SelectedValue.ToString();
|
|
|
|
int.TryParse(size, out packageSize);
|
|
|
|
|
|
|
|
if(packageSize == 0)
|
|
|
|
{
|
|
|
|
MessageBox.Show("该产品规格标包为0,无法打印箱码,请取消后重试.");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
int allCount = Convert.ToInt32(textBox4.Text.Trim());
|
|
|
|
int i = allCount % packageSize;
|
|
|
|
|
|
|
|
if(i > 0)
|
|
|
|
{
|
|
|
|
msg = $"标包数为[{packageSize}],最后一箱数量为[{i}],不能满箱打印,是否确定手工打印条码?";
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
DialogResult result = MessageBox.Show(msg, "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information);
|
|
|
|
if (result == DialogResult.OK)
|
|
|
|
{
|
|
|
|
//查询零件号
|
|
|
|
stockNo = comboBox1.Text.Substring(0, 10);
|
|
|
|
partNo = textBox1.Text.Trim();
|
|
|
|
|
|
|
|
#region 判断零件是否是直供件、是否打印标签
|
|
|
|
|
|
|
|
ProductBLL prbll = new ProductBLL();
|
|
|
|
DataTable prdt = prbll.SearchInfoByPartNo(partNo);
|
|
|
|
if (prdt != null && prdt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
IsSupply = prdt.Rows[0]["IsSupply"].ToString();
|
|
|
|
QLevel = prdt.Rows[0]["QLevel"].ToString();
|
|
|
|
IsPrint = prdt.Rows[0]["IsPrintOneTag"].ToString();
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 非直供件
|
|
|
|
|
|
|
|
if (IsSupply != "1")
|
|
|
|
{
|
|
|
|
for (int i = 1; i <= Convert.ToInt32(textBox4.Text.Trim()); i++)
|
|
|
|
{
|
|
|
|
DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
|
|
|
|
string packageCode = string.Empty;
|
|
|
|
if (cboxHandBox.Checked)
|
|
|
|
{
|
|
|
|
if( i% packageSize == 1)
|
|
|
|
{
|
|
|
|
packageCode = SaveBoxInfo(pdt, partNo, textBox3.Text.Trim(), packageSize.ToString());
|
|
|
|
|
|
|
|
if(string.IsNullOrEmpty(packageCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("箱单生成失败,请重新操作!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
packageCode = lbPackageCodeL.Text.Trim();
|
|
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(packageCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("箱单生成失败,请重新操作!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
packageCode = lbPackageCodeL.Text.Trim();
|
|
|
|
}
|
|
|
|
if (string.IsNullOrEmpty(packageCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("箱单生成失败,请重新操作!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
GetSjBarCode(stockNo, partNo,false, ref NewOneCode, ref newcode);
|
|
|
|
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.PartNo = partNo;
|
|
|
|
md.PlanID = planID;
|
|
|
|
md.ProductNature = ProductNature;
|
|
|
|
md.BoxNo = packageCode;
|
|
|
|
|
|
|
|
if (pdt != null && pdt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
PartName = pdt.Rows[0]["ProductName"].ToString();
|
|
|
|
if (pdt.Rows[0]["isImport"].ToString() == "1")
|
|
|
|
{
|
|
|
|
md.Import = "国产料Kingfa";
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
md.Import = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//if (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
//{
|
|
|
|
// return;
|
|
|
|
//}
|
|
|
|
if(SaveBarCode(md, "tb_BarCode5", i== Convert.ToInt32(textBox4.Text.Trim())) == false)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
|
|
|
|
#region 214TrunkBox存入质检表
|
|
|
|
|
|
|
|
if (partNo == "A2146106203kz")
|
|
|
|
{
|
|
|
|
tb_Inspection_tx imd = new tb_Inspection_tx();
|
|
|
|
InspectionBLL ibll = new InspectionBLL();
|
|
|
|
|
|
|
|
imd.BarCode = NewOneCode;
|
|
|
|
imd.IsOK = 1;
|
|
|
|
imd.Station = 1;
|
|
|
|
|
|
|
|
ibll.AddInfo(imd);
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
if (IsPrint == "1")
|
|
|
|
{
|
|
|
|
#region 打印条码
|
|
|
|
|
|
|
|
//filename = System.AppDomain.CurrentDomain.BaseDirectory + "单个条码.grf";
|
|
|
|
filename = System.AppDomain.CurrentDomain.BaseDirectory + PrintMoudleName();
|
|
|
|
DataTable headTable = new DataTable();
|
|
|
|
headTable.Columns.Add("PrintTime");
|
|
|
|
headTable.Columns.Add("PartNo");
|
|
|
|
headTable.Columns.Add("PartName");
|
|
|
|
headTable.Columns.Add("OneBarCode");
|
|
|
|
headTable.Columns.Add("BarCode");
|
|
|
|
headTable.Columns.Add("Station");
|
|
|
|
DataRow row = headTable.NewRow();
|
|
|
|
row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
row["PartNo"] = partNo;
|
|
|
|
row["PartName"] = PartName;
|
|
|
|
row["OneBarCode"] = NewOneCode;
|
|
|
|
row["BarCode"] = newcode;
|
|
|
|
row["Station"] = comboBox2.Text?.Trim();
|
|
|
|
string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
rp.Report.Print(false);
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#region 原有打印代码
|
|
|
|
//DataTable dt = bll.SearchSerialNoByBarCodeNew(partNo + "." + 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');
|
|
|
|
|
|
|
|
// GetSjBarCode(stockNo, partNo, ref NewOneCode, ref newcode);
|
|
|
|
// 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.PartNo = partNo;
|
|
|
|
// md.PlanID = planID;
|
|
|
|
// md.ProductNature = ProductNature;
|
|
|
|
|
|
|
|
// DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
|
|
|
|
// if (pdt != null && pdt.Rows.Count > 0)
|
|
|
|
// {
|
|
|
|
// PartName = pdt.Rows[0]["ProductName"].ToString();
|
|
|
|
// if (pdt.Rows[0]["isImport"].ToString() == "1")
|
|
|
|
// {
|
|
|
|
// md.Import = "国产料Kingfa";
|
|
|
|
// }
|
|
|
|
// else
|
|
|
|
// {
|
|
|
|
// md.Import = "";
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
// if (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
// {
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #region 214TrunkBox存入质检表
|
|
|
|
|
|
|
|
// if (partNo == "A2146106203kz")
|
|
|
|
// {
|
|
|
|
// tb_Inspection_tx imd = new tb_Inspection_tx();
|
|
|
|
// InspectionBLL ibll = new InspectionBLL();
|
|
|
|
|
|
|
|
// imd.BarCode = NewOneCode;
|
|
|
|
// imd.IsOK =1;
|
|
|
|
// imd.Station = 1;
|
|
|
|
|
|
|
|
// ibll.AddInfo(imd);
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
|
|
|
|
// if (IsPrint == "1")
|
|
|
|
// {
|
|
|
|
// #region 打印条码
|
|
|
|
|
|
|
|
// filename = System.AppDomain.CurrentDomain.BaseDirectory + "单个条码.grf";
|
|
|
|
// DataTable headTable = new DataTable();
|
|
|
|
// headTable.Columns.Add("PrintTime");
|
|
|
|
// headTable.Columns.Add("PartNo");
|
|
|
|
// headTable.Columns.Add("PartName");
|
|
|
|
// headTable.Columns.Add("OneBarCode");
|
|
|
|
// headTable.Columns.Add("BarCode");
|
|
|
|
// DataRow row = headTable.NewRow();
|
|
|
|
// row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
// row["PartNo"] = partNo;
|
|
|
|
// row["PartName"] = PartName;
|
|
|
|
// row["OneBarCode"] = NewOneCode;
|
|
|
|
// row["BarCode"] = newcode;
|
|
|
|
// string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
// headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
// ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
// rp.Report.Print(false);
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
//}
|
|
|
|
//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.PartNo = partNo;
|
|
|
|
// md.PlanID = planID;
|
|
|
|
// md.ProductNature = ProductNature;
|
|
|
|
|
|
|
|
// DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
|
|
|
|
// if (pdt != null && pdt.Rows.Count > 0)
|
|
|
|
// {
|
|
|
|
// PartName = pdt.Rows[0]["ProductName"].ToString();
|
|
|
|
// if (pdt.Rows[0]["isImport"].ToString() == "1")
|
|
|
|
// {
|
|
|
|
// md.Import = "国产料Kingfa";
|
|
|
|
// }
|
|
|
|
// else
|
|
|
|
// {
|
|
|
|
// md.Import = "";
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
// if (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
// {
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #region 214TrunkBox存入质检表
|
|
|
|
|
|
|
|
// if (partNo == "A2146106203kz")
|
|
|
|
// {
|
|
|
|
// tb_Inspection_tx imd = new tb_Inspection_tx();
|
|
|
|
// InspectionBLL ibll = new InspectionBLL();
|
|
|
|
|
|
|
|
// imd.BarCode = NewOneCode;
|
|
|
|
// imd.IsOK = 1;
|
|
|
|
// imd.Station = 1;
|
|
|
|
|
|
|
|
// ibll.AddInfo(imd);
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
|
|
|
|
// if (IsPrint == "1")
|
|
|
|
// {
|
|
|
|
// #region 打印条码
|
|
|
|
|
|
|
|
// filename = System.AppDomain.CurrentDomain.BaseDirectory + "单个条码.grf";
|
|
|
|
// DataTable headTable = new DataTable();
|
|
|
|
// headTable.Columns.Add("PrintTime");
|
|
|
|
// headTable.Columns.Add("PartNo");
|
|
|
|
// headTable.Columns.Add("PartName");
|
|
|
|
// headTable.Columns.Add("OneBarCode");
|
|
|
|
// headTable.Columns.Add("BarCode");
|
|
|
|
// DataRow row = headTable.NewRow();
|
|
|
|
// row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
// row["PartNo"] = partNo;
|
|
|
|
// row["PartName"] = PartName;
|
|
|
|
// row["OneBarCode"] = NewOneCode;
|
|
|
|
// row["BarCode"] = newcode;
|
|
|
|
|
|
|
|
// string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
// headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
// ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
// rp.Report.Print(false);
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
//}
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region 直供件
|
|
|
|
|
|
|
|
if (IsSupply == "1")
|
|
|
|
{
|
|
|
|
|
|
|
|
for (int i = 1; i <= Convert.ToInt32(textBox4.Text.Trim()); i++)
|
|
|
|
{
|
|
|
|
//newcode = partNo + "#" + QLevel + "#" + textBox3.Text.Trim() + "#" +
|
|
|
|
// i.ToString().PadLeft(3, '0') + "#";
|
|
|
|
|
|
|
|
DataTable pdt = pbll.SearchIsImportByStockNo(stockNo);
|
|
|
|
string packageCode = string.Empty;
|
|
|
|
if (cboxHandBox.Checked)
|
|
|
|
{
|
|
|
|
if (i % packageSize == 1)
|
|
|
|
{
|
|
|
|
packageCode = SaveBoxInfo(pdt, partNo, textBox3.Text.Trim(), packageSize.ToString());
|
|
|
|
|
|
|
|
if (string.IsNullOrEmpty(packageCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("箱单生成失败,请重新操作!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
packageCode = lbPackageCodeL.Text.Trim();
|
|
|
|
}
|
|
|
|
if(string.IsNullOrEmpty(packageCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("箱单生成失败,请重新操作!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
NewOneCode = "";
|
|
|
|
//直供件不生成NewOneCode 此处也生成一个,可以不用
|
|
|
|
GetSjBarCode(stockNo, partNo, false, ref NewOneCode, ref newcode);
|
|
|
|
|
|
|
|
GetSupplyCode(partNo, QLevel,true, ref newcode);
|
|
|
|
|
|
|
|
string[] part = newcode.Split('.');
|
|
|
|
|
|
|
|
#region 存入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.PartNo = partNo;
|
|
|
|
md.PlanID = planID;
|
|
|
|
md.ProductNature = ProductNature;
|
|
|
|
md.BoxNo = packageCode;
|
|
|
|
// 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 (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
//{
|
|
|
|
// return;
|
|
|
|
//}
|
|
|
|
if (SaveBarCode(md, "tb_BarCode5", i == Convert.ToInt32(textBox4.Text.Trim())) == false)
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
|
|
if (IsPrint == "1")
|
|
|
|
{
|
|
|
|
#region 打印条码
|
|
|
|
|
|
|
|
//filename = System.AppDomain.CurrentDomain.BaseDirectory + "单个条码1.grf";
|
|
|
|
filename = System.AppDomain.CurrentDomain.BaseDirectory + PrintMoudleName();
|
|
|
|
|
|
|
|
DataTable headTable = new DataTable();
|
|
|
|
headTable.Columns.Add("PrintTime");
|
|
|
|
headTable.Columns.Add("PartNo");
|
|
|
|
headTable.Columns.Add("PartName");
|
|
|
|
headTable.Columns.Add("OneBarCode");
|
|
|
|
headTable.Columns.Add("BarCode");
|
|
|
|
headTable.Columns.Add("Station");
|
|
|
|
DataRow row = headTable.NewRow();
|
|
|
|
row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
row["PartNo"] = partNo;
|
|
|
|
row["PartName"] = PartName;
|
|
|
|
row["OneBarCode"] = NewOneCode;
|
|
|
|
row["BarCode"] = newcode;
|
|
|
|
row["Station"] = comboBox2.Text?.Trim();
|
|
|
|
string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
rp.Report.Print(false);
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
#region 原来打印代码
|
|
|
|
//DataTable dt = bll.SearchSerialNoByBarCodeNew1(partNo + "#" + QLevel + "#" + textBox3.Text.Trim() + "#");
|
|
|
|
//if (dt != null && dt.Rows.Count > 0)
|
|
|
|
//{
|
|
|
|
// code = dt.Rows[0]["BarCode"].ToString().Trim();
|
|
|
|
// for (int i = 1; i <= Convert.ToInt32(textBox2.Text.Trim()); i++)
|
|
|
|
// {
|
|
|
|
// newcode = code.Substring(0, code.Length - 4) +
|
|
|
|
// (Convert.ToInt32(code.Substring(23, 3)) +
|
|
|
|
// i).ToString()
|
|
|
|
// .PadLeft(3, '0') + "#";
|
|
|
|
|
|
|
|
// #region 插入数据tb_barCode
|
|
|
|
|
|
|
|
// md.ID = Guid.NewGuid().ToString();
|
|
|
|
// md.StationID = Program.StationID;
|
|
|
|
// md.StationID2 = stationID;
|
|
|
|
// md.StockNo = stockNo;
|
|
|
|
// md.OneBarCode = "";
|
|
|
|
// md.BarCode = newcode;
|
|
|
|
// md.PrintType = 1;
|
|
|
|
// md.PartNo = partNo;
|
|
|
|
|
|
|
|
// md.PlanID = planID;
|
|
|
|
// md.ProductNature = ProductNature;
|
|
|
|
|
|
|
|
// DataTable dt2 = pbll.SearchIsImportByPartNo(partNo);
|
|
|
|
// if (dt2 != null && dt2.Rows.Count > 0)
|
|
|
|
// {
|
|
|
|
// if (dt2.Rows[0]["isImport"].ToString() == "1")
|
|
|
|
// {
|
|
|
|
// md.Import = "国产料Kingfa";
|
|
|
|
// }
|
|
|
|
// else
|
|
|
|
// {
|
|
|
|
// md.Import = "";
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
|
|
|
|
// if (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
// {
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
|
|
|
|
// if (IsPrint == "1")
|
|
|
|
// {
|
|
|
|
// #region 打印条码
|
|
|
|
|
|
|
|
// filename = System.AppDomain.CurrentDomain.BaseDirectory +
|
|
|
|
// "单个条码1.grf";
|
|
|
|
|
|
|
|
// DataTable headTable = new DataTable();
|
|
|
|
// headTable.Columns.Add("PrintTime");
|
|
|
|
// headTable.Columns.Add("PartNo");
|
|
|
|
// headTable.Columns.Add("PartName");
|
|
|
|
// headTable.Columns.Add("OneBarCode");
|
|
|
|
// headTable.Columns.Add("BarCode");
|
|
|
|
// DataRow row = headTable.NewRow();
|
|
|
|
// row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
// row["PartNo"] = partNo;
|
|
|
|
// row["PartName"] = PartName;
|
|
|
|
// row["OneBarCode"] = NewOneCode;
|
|
|
|
// row["BarCode"] = newcode;
|
|
|
|
// string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
// headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
// ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
// rp.Report.Print(false);
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
//}
|
|
|
|
//else
|
|
|
|
//{
|
|
|
|
// for (int i = 1; i <= Convert.ToInt32(textBox4.Text.Trim()); i++)
|
|
|
|
// {
|
|
|
|
// newcode = partNo + "#" + QLevel + "#" + textBox3.Text.Trim() + "#" +
|
|
|
|
// i.ToString().PadLeft(3, '0') + "#";
|
|
|
|
// NewOneCode = "";
|
|
|
|
// string[] part = newcode.Split('.');
|
|
|
|
|
|
|
|
// #region 存入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.PartNo = partNo;
|
|
|
|
// md.PlanID = planID;
|
|
|
|
// md.ProductNature = ProductNature;
|
|
|
|
|
|
|
|
// 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 (bll.Add_Info_New(md, "tb_BarCode5") == false)
|
|
|
|
// {
|
|
|
|
// return;
|
|
|
|
// }
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
|
|
|
|
|
|
|
|
// if (IsPrint == "1")
|
|
|
|
// {
|
|
|
|
// #region 打印条码
|
|
|
|
|
|
|
|
// filename = System.AppDomain.CurrentDomain.BaseDirectory +
|
|
|
|
// "单个条码1.grf";
|
|
|
|
|
|
|
|
// DataTable headTable = new DataTable();
|
|
|
|
// headTable.Columns.Add("PrintTime");
|
|
|
|
// headTable.Columns.Add("PartNo");
|
|
|
|
// headTable.Columns.Add("PartName");
|
|
|
|
// headTable.Columns.Add("OneBarCode");
|
|
|
|
// headTable.Columns.Add("BarCode");
|
|
|
|
// DataRow row = headTable.NewRow();
|
|
|
|
// row["PrintTime"] = GetDateTime().ToString("yyyy/MM/dd HH:mm:ss");
|
|
|
|
// row["PartNo"] = partNo;
|
|
|
|
// row["PartName"] = PartName;
|
|
|
|
// row["OneBarCode"] = NewOneCode;
|
|
|
|
// row["BarCode"] = newcode;
|
|
|
|
// string reportName = ConfigurationManager.AppSettings["Printer1"].ToString();
|
|
|
|
// headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
// ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
// rp.Report.Print(false);
|
|
|
|
|
|
|
|
// #endregion
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
//}
|
|
|
|
#endregion
|
|
|
|
}
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
initBarCode();
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
MessageBox.Show(ex.Message);
|
|
|
|
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
string SaveBoxInfo(DataTable pdt, string partNo, string batch,string packageSize)
|
|
|
|
{
|
|
|
|
string packageCode = _uniqueBll.GetPackageCodeSerialNo(partNo, textBox3.Text.Trim(), packageSize.ToString());
|
|
|
|
InjectionBoxModel boxmd = new InjectionBoxModel();
|
|
|
|
boxmd.ID = Guid.NewGuid().ToString();
|
|
|
|
boxmd.BoxNo = packageCode;
|
|
|
|
boxmd.BoxCount = 0;
|
|
|
|
boxmd.BoxType = 0;
|
|
|
|
boxmd.IsFlag = 0;
|
|
|
|
boxmd.StationNo = Program.station;
|
|
|
|
if (pdt != null && pdt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
boxmd.PartName = pdt.Rows[0]["ProductName"].ToString();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
boxmd.Mould = "2";
|
|
|
|
boxmd.StandardQty = packageSize.ToString();
|
|
|
|
if(_injectionBoxBLL.AddInfo(boxmd))
|
|
|
|
{
|
|
|
|
this.lbPackageCodeL.Text = packageCode;
|
|
|
|
return packageCode;
|
|
|
|
}
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
bool SaveBarCode(BarCodeModel bcm, string tableName , bool printBox)
|
|
|
|
{
|
|
|
|
bool saveRst = false;
|
|
|
|
if (cboxHandBox.Checked)
|
|
|
|
{
|
|
|
|
saveRst = _bll.Add_Info_New(bcm, "tb_BarCode5");
|
|
|
|
if(saveRst == true)
|
|
|
|
{
|
|
|
|
if (_injectionBoxBLL.UpdateBoxCount(bcm.BoxNo,1))
|
|
|
|
{
|
|
|
|
DataTable dt = _injectionBoxBLL.SearchBox(bcm.BoxNo);
|
|
|
|
if (dt.Rows.Count > 0)
|
|
|
|
{
|
|
|
|
string realCountStr = dt.Rows[0]["BoxCount"].ToString();
|
|
|
|
|
|
|
|
int realCount = 0;
|
|
|
|
int sizeCount = 0;
|
|
|
|
int.TryParse(realCountStr, out realCount);
|
|
|
|
int.TryParse(comBoxSizeL.SelectedValue?.ToString(), out sizeCount);
|
|
|
|
if ((realCount != 0 && realCount == sizeCount) || printBox ==true)
|
|
|
|
{
|
|
|
|
//检查上一个箱码是否给wms传成功了, 没成功重传一次.
|
|
|
|
//if (!string.IsNullOrEmpty(_lastBoxNo))
|
|
|
|
//{
|
|
|
|
// if(_wmsBll.IsSendPackageCode(_lastBoxNo) == false)
|
|
|
|
// {
|
|
|
|
// DataTable dt2 = _injectionBoxBLL.SearchBox(_lastBoxNo);
|
|
|
|
// if(dt2.Rows.Count >0)
|
|
|
|
// {
|
|
|
|
// _wmsBll.SaveInterface(dt2.Rows[0], MESClassLibrary.Enum.WmsInterfaceEnum.塑件箱码报工);
|
|
|
|
// }
|
|
|
|
// }
|
|
|
|
// _lastBoxNo = "";
|
|
|
|
|
|
|
|
//}
|
|
|
|
////wms接口传递
|
|
|
|
//_wmsBll.SaveInterface(dt.Rows[0], MESClassLibrary.Enum.WmsInterfaceEnum.塑件箱码报工);
|
|
|
|
|
|
|
|
_wmsBll.SaveInterface(dt.Rows[0]["BoxNo"].ToString(), _lastBoxNo, "", MESClassLibrary.Enum.WmsInterfaceEnum.塑件箱码报工, Program.station);
|
|
|
|
|
|
|
|
//打印箱码
|
|
|
|
PrintBoxCode(dt.Rows[0], realCount,false);
|
|
|
|
_lastBoxNo = lbPackageCodeL.Text;
|
|
|
|
lbPackageCodeL.Text = "";
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
saveRst = _bll.Add_Info_New(bcm, "tb_BarCode5");
|
|
|
|
}
|
|
|
|
return saveRst;
|
|
|
|
}
|
|
|
|
private void PrintBoxCode(DataRow boxRow, int realCount,bool isRePrint)
|
|
|
|
{
|
|
|
|
string filename = System.AppDomain.CurrentDomain.BaseDirectory + "装箱单.grf";
|
|
|
|
DataTable headTable = new DataTable();
|
|
|
|
headTable.Columns.Add("BoxNo");
|
|
|
|
headTable.Columns.Add("PartName");
|
|
|
|
headTable.Columns.Add("PartNo");
|
|
|
|
headTable.Columns.Add("BatchNo");
|
|
|
|
headTable.Columns.Add("PackCount");
|
|
|
|
headTable.Columns.Add("Line");
|
|
|
|
DataRow row = headTable.NewRow();
|
|
|
|
string boxCode = boxRow["BoxNo"].ToString();
|
|
|
|
string[] boxes = boxCode.Split('.');
|
|
|
|
if (boxes.Length != 4)
|
|
|
|
{
|
|
|
|
//新生成一个箱码 应该都有
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
row["BoxNo"] = boxCode;
|
|
|
|
row["PartNo"] = boxes[0].Trim();
|
|
|
|
row["PartName"] = boxRow["PartName"].ToString();
|
|
|
|
row["BatchNo"] = boxes[1].Trim();
|
|
|
|
row["PackCount"] = realCount;
|
|
|
|
row["Line"] = boxRow["StationNo"].ToString() + "注塑机";
|
|
|
|
}
|
|
|
|
//补打不修改数据状态
|
|
|
|
if(isRePrint == false)
|
|
|
|
{
|
|
|
|
UpdateBoxRecordPrintState(boxCode);
|
|
|
|
}
|
|
|
|
|
|
|
|
string reportName = ConfigurationManager.AppSettings["Printer2"].ToString();
|
|
|
|
headTable.Rows.Add(row);
|
|
|
|
|
|
|
|
ReportHelper rp = new ReportHelper(filename, headTable, null, (int)GRPaperOrientation.grpoDefault, 1, reportName);
|
|
|
|
|
|
|
|
rp.Report.Print(false);
|
|
|
|
|
|
|
|
//if (pnBoxReprint.Visible == true)
|
|
|
|
//{
|
|
|
|
// pnBoxReprint.Visible = false;
|
|
|
|
//}
|
|
|
|
//else
|
|
|
|
//{
|
|
|
|
// pnBoxReprint.Visible = true;
|
|
|
|
//}
|
|
|
|
}
|
|
|
|
private void UpdateBoxRecordPrintState(string UpdatePrinted)
|
|
|
|
{
|
|
|
|
_injectionBoxBLL.UpdatePrinted(UpdatePrinted);
|
|
|
|
}
|
|
|
|
|
|
|
|
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();
|
|
|
|
|
|
|
|
glacialList1.Items[i].SubItems[0].Tag = dt.Rows[i]["BoxNo"].ToString();
|
|
|
|
glacialList1.Items[i].SubItems[1].Tag = dt.Rows[i]["TableName"].ToString();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
textBox5.Text = "";
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
LogErrBLL.AddInfo(ex.ToString(), MethodBase.GetCurrentMethod());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void FrmBarCodeSearch_FormClosing(object sender, FormClosingEventArgs e)
|
|
|
|
{
|
|
|
|
Application.Exit();
|
|
|
|
}
|
|
|
|
|
|
|
|
void GetSjBarCode(string stockNo, string partNo,bool autoPrint, ref string newOneCode, ref string newCode)
|
|
|
|
{
|
|
|
|
string batch = string.Empty;
|
|
|
|
if (autoPrint)
|
|
|
|
{
|
|
|
|
batch = Program.ProductDate.Substring(2, 2) + Program.ProductDate.Substring(5, 2) + Program.ProductDate.Substring(8, 2);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
batch = textBox3.Text.Trim();
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
newOneCode = _uniqueBll.GetSjBarCodeSerialNo(stockNo, batch);
|
|
|
|
newCode = partNo + "." + batch + "." + newOneCode.Substring(newOneCode.Length - 4, 4);
|
|
|
|
}
|
|
|
|
void GetSupplyCode(string partNo, string qLevel, bool autoPrint, ref string newCode)
|
|
|
|
{
|
|
|
|
string batch = string.Empty;
|
|
|
|
if (autoPrint)
|
|
|
|
{
|
|
|
|
batch = Program.ProductDate.Substring(2, 2) + Program.ProductDate.Substring(5, 2) + Program.ProductDate.Substring(8, 2);
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
batch = textBox3.Text.Trim();
|
|
|
|
}
|
|
|
|
newCode = _uniqueBll.GetSupplySerialNo(partNo, qLevel, batch);
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btnPackage_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
string boxCode = string.Empty;
|
|
|
|
string tableName = string.Empty;
|
|
|
|
if (glacialList1.SelectedItems.Count > 0)
|
|
|
|
{
|
|
|
|
GlacialComponents.Controls.GLItem gv;
|
|
|
|
gv = glacialList1.SelectedItems[0] as GlacialComponents.Controls.GLItem;
|
|
|
|
|
|
|
|
boxCode = gv.SubItems[0].Tag?.ToString();
|
|
|
|
tableName = gv.SubItems[1].Tag?.ToString();
|
|
|
|
}
|
|
|
|
FrmPackageDetail detail = new FrmPackageDetail(boxCode);
|
|
|
|
detail.FormClosed += (arg1, arg2) => {
|
|
|
|
initBarCode();
|
|
|
|
};
|
|
|
|
detail.ShowDialog();
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btnBoxRePrint_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
if(pnBoxReprint.Visible == true)
|
|
|
|
{
|
|
|
|
pnBoxReprint.Visible = false;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
pnBoxReprint.Visible = true;
|
|
|
|
}
|
|
|
|
|
|
|
|
if (glacialList1.SelectedItems.Count > 0)
|
|
|
|
{
|
|
|
|
GlacialComponents.Controls.GLItem gv;
|
|
|
|
gv = glacialList1.SelectedItems[0] as GlacialComponents.Controls.GLItem;
|
|
|
|
|
|
|
|
txtRePrintBoxCode.Text = gv.SubItems[0].Tag?.ToString();
|
|
|
|
txtRePrintBoxCode.SelectAll();
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btnRePrint_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
string boxCode = txtRePrintBoxCode.Text?.Trim();
|
|
|
|
if (string.IsNullOrEmpty(boxCode))
|
|
|
|
{
|
|
|
|
MessageBox.Show("请输入箱码");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
DataTable dt = _injectionBoxBLL.SearchBox(boxCode);
|
|
|
|
if(dt.Rows.Count == 0)
|
|
|
|
{
|
|
|
|
MessageBox.Show($"箱码[{boxCode}]在系统中不存在!");
|
|
|
|
return;
|
|
|
|
}
|
|
|
|
PrintBoxCode(dt.Rows[0], int.Parse(dt.Rows[0]["StandardQty"].ToString()), true);
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btnPrintCancel_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
pnBoxReprint.Visible = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
List<string> GetProductBoxSize(string productCode, ref string currentSize)
|
|
|
|
{
|
|
|
|
try
|
|
|
|
{
|
|
|
|
ProductBLL productBll = new ProductBLL();
|
|
|
|
DataTable dt = productBll.SearchInfoByPartNo(productCode);
|
|
|
|
if (dt.Rows.Count == 0)
|
|
|
|
{
|
|
|
|
currentSize = "24";
|
|
|
|
MessageBox.Show("零件号{productCode}未设置标包,默认为24,请及时核对后进行配置.");
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
currentSize = dt.Rows[0]["PackCount"].ToString();
|
|
|
|
string sizeStr = dt.Rows[0]["PackCountSize"].ToString();
|
|
|
|
List<string> list = new List<string>();
|
|
|
|
if (string.IsNullOrEmpty(sizeStr))
|
|
|
|
{
|
|
|
|
list.Add(currentSize);
|
|
|
|
return list;
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
string[] array = sizeStr.Split(',');
|
|
|
|
foreach (string item in array)
|
|
|
|
{
|
|
|
|
if (!list.Contains(item))
|
|
|
|
{
|
|
|
|
list.Add(item);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (!list.Contains(currentSize))
|
|
|
|
{
|
|
|
|
list.Add(currentSize);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
return list;
|
|
|
|
}
|
|
|
|
catch (Exception ex)
|
|
|
|
{
|
|
|
|
currentSize = "24";
|
|
|
|
MessageBox.Show("零件号{productCode}未设置标包,默认为24,请及时核对后进行配置.");
|
|
|
|
return null;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
private void btnChangeSizeR_Click(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
ChangeSize();
|
|
|
|
}
|
|
|
|
void ChangeSize()
|
|
|
|
{
|
|
|
|
string pass = _basicBLL1.GetInjectionChangedSizePass();
|
|
|
|
Form frm = new Form();
|
|
|
|
frm.Size = new Size(400, 300);
|
|
|
|
frm.StartPosition = FormStartPosition.CenterParent;
|
|
|
|
TextBox tb = new TextBox();
|
|
|
|
tb.Width = 300;
|
|
|
|
tb.Location = new System.Drawing.Point(30, 30);
|
|
|
|
tb.PasswordChar = '#';
|
|
|
|
Button bt = new Button();
|
|
|
|
bt.Width = 100;
|
|
|
|
bt.Text = "确定";
|
|
|
|
bt.Margin = new Padding(40, 100, 0, 0);
|
|
|
|
bt.Location = new System.Drawing.Point(100, 171);
|
|
|
|
bt.Click += (arg1, arg2) => {
|
|
|
|
frm.Close();
|
|
|
|
string s = tb.Text;
|
|
|
|
if (s == pass)
|
|
|
|
{
|
|
|
|
comBoxSizeL.Enabled = true;
|
|
|
|
}
|
|
|
|
};
|
|
|
|
frm.Controls.Add(tb);
|
|
|
|
frm.Controls.Add(bt);
|
|
|
|
frm.ShowDialog();
|
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
private void comBoxSizeL_SelectedValueChanged(object sender, EventArgs e)
|
|
|
|
{
|
|
|
|
comBoxSizeL.Enabled = false;
|
|
|
|
}
|
|
|
|
|
|
|
|
string PrintMoudleName()
|
|
|
|
{
|
|
|
|
string stationName = comboBox2.Text.Trim();
|
|
|
|
|
|
|
|
if ("IM05,IM08,IM10".Contains(stationName)) //二维小条码
|
|
|
|
{
|
|
|
|
return "单个条码2.grf";
|
|
|
|
}
|
|
|
|
else if ("IM06,IM07,IM09,IM11,IM12,".Contains(stationName)) //一维条码
|
|
|
|
{
|
|
|
|
return "单个条码.grf";
|
|
|
|
}
|
|
|
|
|
|
|
|
else if ("IM01,IM02,IM03,IM04,IM15,IM18,IM20".Contains(stationName)) //小米大条码
|
|
|
|
{
|
|
|
|
return "Sill.grf";
|
|
|
|
}
|
|
|
|
else if ("IM13,IM14".Contains(stationName)) //直供条码
|
|
|
|
{
|
|
|
|
return "单个条码1.grf";
|
|
|
|
}
|
|
|
|
else
|
|
|
|
{
|
|
|
|
return "单个条码2.grf";
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|