309 lines
14 KiB
C#
309 lines
14 KiB
C#
using GeBoShi.SysCtrl;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.IO.Ports;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
|
|
namespace GeBoShi.UI.SysSet
|
|
{
|
|
public partial class SysSetFrm : Form
|
|
{
|
|
public SysSetFrm()
|
|
{
|
|
InitializeComponent();
|
|
UIStyle.SetUIStyle(this);
|
|
this.uiTitel1.FatherForm = this;
|
|
}
|
|
|
|
private void tsbtnExit_Click(object sender, EventArgs e)
|
|
{
|
|
this.Close();
|
|
}
|
|
|
|
private void tsbtnSave_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
GetParamsSave();
|
|
MessageBox.Show("保存成功,修改硬件参数之后需重启生效!", "保存成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message, "保存出错", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
private void SysSetFrm_Load(object sender, EventArgs e)
|
|
{
|
|
skinTabControl1.SelectedIndex = 0;
|
|
var comNameList = SerialPort.GetPortNames().ToList();
|
|
comNameList.ForEach(comName =>
|
|
{
|
|
this.cobLightPortNum.Items.Add(comName);
|
|
});
|
|
//显示所有打印机
|
|
if (SysMgr.Instance.PrintControl != null)
|
|
{
|
|
List<string> list = SysMgr.Instance.PrintControl.GetPrintersName();
|
|
foreach (string printer in list)
|
|
{
|
|
cboPrinters.Items.Add(printer);
|
|
cboPrinters2.Items.Add(printer);
|
|
}
|
|
}
|
|
RefeshParams();
|
|
}
|
|
#region 界面刷新&保存
|
|
private void RefeshParams()
|
|
{
|
|
chkBuzzer.Checked = ConfMgr.Instance.SysConfigParams.OpenBuzzer;
|
|
//chkDoorSensor.Checked = ConfMgr.Instance.SysConfigParams.OpenDoor;
|
|
cbIODev.Checked = ConfMgr.Instance.SysConfigParams.OpenIO;
|
|
cbPLC.Checked = ConfMgr.Instance.SysConfigParams.OpenPLC;
|
|
|
|
cobLightPortNum.Text = ConfMgr.Instance.SysConfigParams.LightCom;
|
|
numLightBaud.Value = ConfMgr.Instance.SysConfigParams.LightComBaud;
|
|
|
|
tbIODevNum.Text = ConfMgr.Instance.SysConfigParams.IODevName;
|
|
tbIOCfgPath.Text = ConfMgr.Instance.SysConfigParams.IOCfgPath;
|
|
tbPLCIP.Text = ConfMgr.Instance.SysConfigParams.PLC_IP;
|
|
|
|
tbCamCfgPath.Text = ConfMgr.Instance.SysConfigParams.CamPath_1;
|
|
tbCamCfgPath2.Text = ConfMgr.Instance.SysConfigParams.CamPath_2;
|
|
numCamIndex.Value = ConfMgr.Instance.SysConfigParams.CamIndex_1;
|
|
numCamIndex2.Value = ConfMgr.Instance.SysConfigParams.CamIndex_2;
|
|
numCamDev.Value = ConfMgr.Instance.SysConfigParams.CamDev_1;
|
|
numCamDev2.Value = ConfMgr.Instance.SysConfigParams.CamDev_2;
|
|
|
|
chkSave1.Checked = ConfMgr.Instance.SysConfigParams.DefectSrcImag.AutoSave;
|
|
tbDefectPath.Text = ConfMgr.Instance.SysConfigParams.DefectSrcImag.SavePath;
|
|
chkDefect_Path_AutoClear.Checked = ConfMgr.Instance.SysConfigParams.DefectSrcImag.AutoDelete;
|
|
numDefect_Path_AutoClear.Value = (decimal)ConfMgr.Instance.SysConfigParams.DefectSrcImag.AutoDeleteDays;
|
|
|
|
chkSave2.Checked = ConfMgr.Instance.SysConfigParams.DefectSmallImag.AutoSave;
|
|
tbDefectSmallPath.Text = ConfMgr.Instance.SysConfigParams.DefectSmallImag.SavePath;
|
|
chkDefect_Small_Path_AutoClear.Checked = ConfMgr.Instance.SysConfigParams.DefectSmallImag.AutoDelete;
|
|
numDefect_Small_Path_AutoClear.Value = (decimal)ConfMgr.Instance.SysConfigParams.DefectSmallImag.AutoDeleteDays;
|
|
|
|
chkSave3.Checked = ConfMgr.Instance.SysConfigParams.DefectSplicImag.AutoSave;
|
|
tbDefectCompressSavePath.Text = ConfMgr.Instance.SysConfigParams.DefectSplicImag.SavePath;
|
|
chkDefect_Compress_SavePath_AutoClear.Checked = ConfMgr.Instance.SysConfigParams.DefectSplicImag.AutoDelete;
|
|
numDefect_Compress_SavePath_AutoClear.Value = (decimal)ConfMgr.Instance.SysConfigParams.DefectSplicImag.AutoDeleteDays;
|
|
|
|
tbModelPath.Text = ConfMgr.Instance.SysConfigParams.AIModelPath;
|
|
tbPdtPath.Text = ConfMgr.Instance.ProjectDir;
|
|
tbLogPath.Text = ConfMgr.Instance.SysConfigParams.LogPath;
|
|
ckbAutoClear.Checked = ConfMgr.Instance.SysConfigParams.AutoDeleteLog;
|
|
numLogDays.Value = (decimal)ConfMgr.Instance.SysConfigParams.AutoDeleteLogData;
|
|
|
|
cbResetBtn.Checked = ConfMgr.Instance.SysConfigParams.ShowResetBtn;
|
|
cbBuzzShow.Checked = ConfMgr.Instance.SysConfigParams.ShowBuzz;
|
|
cbDoorAlm.Checked = ConfMgr.Instance.SysConfigParams.ShowDoorAlm;
|
|
|
|
numViewX.Value = (decimal)ConfMgr.Instance.SysConfigParams.Cm2px_x;
|
|
numViewY.Value = (decimal)ConfMgr.Instance.SysConfigParams.Cm2px_y;
|
|
numMid.Value = (decimal)ConfMgr.Instance.SysConfigParams.MidCoin;
|
|
numKW.Value = (decimal)ConfMgr.Instance.SysConfigParams.HolePx;
|
|
numL.Value = (decimal)ConfMgr.Instance.SysConfigParams.LCrop;
|
|
numR.Value = (decimal)ConfMgr.Instance.SysConfigParams.RCrop;
|
|
|
|
/////////////Print////////////////
|
|
this.cbOpenBarTenderPrint.Checked = ConfMgr.Instance.SysConfigParams.EnableLabelPrint;
|
|
this.cboPrinters.SelectedItem = ConfMgr.Instance.SysConfigParams.LabelPrinterName;
|
|
|
|
this.cbOpenExcelPrint.Checked = ConfMgr.Instance.SysConfigParams.EnableExcelPrint;
|
|
this.cboPrinters2.SelectedItem = ConfMgr.Instance.SysConfigParams.ExcelPrinterName;
|
|
////////////////////////////////
|
|
|
|
////////////////本地云端////////////////
|
|
cbOpenCloud.Checked = ConfMgr.Instance.SysConfigParams.OpenCloud;
|
|
tbCloudName.Text = ConfMgr.Instance.SysConfigParams.CloudThisName;
|
|
tbCloudIP.Text = ConfMgr.Instance.SysConfigParams.CloudServerIP;
|
|
numCloudPort.Value = (decimal)ConfMgr.Instance.SysConfigParams.CloudServerPort;
|
|
tbCloudUser.Text = ConfMgr.Instance.SysConfigParams.CloudUser;
|
|
tbCloudPassword.Text = ConfMgr.Instance.SysConfigParams.CloudPassword;
|
|
|
|
////////////////////////////////////////
|
|
///
|
|
this.cbMX1.Checked = ConfMgr.Instance.SysConfigParams.Cam1_flipX;
|
|
this.cbMY1.Checked = ConfMgr.Instance.SysConfigParams.Cam1_flipY;
|
|
this.cbMX2.Checked = ConfMgr.Instance.SysConfigParams.Cam2_flipX;
|
|
this.cbMY2.Checked = ConfMgr.Instance.SysConfigParams.Cam2_flipY;
|
|
}
|
|
|
|
private void GetParamsSave()
|
|
{
|
|
SysConfigParams configParams = new SysConfigParams();
|
|
configParams = ConfMgr.Instance.SysConfigParams;
|
|
|
|
configParams.OpenBuzzer = chkBuzzer.Checked;
|
|
//configParams.OpenDoor = chkDoorSensor.Checked;
|
|
configParams.OpenIO = cbIODev.Checked;
|
|
configParams.OpenPLC = cbPLC.Checked;
|
|
|
|
|
|
configParams.LightCom = cobLightPortNum.Text;
|
|
configParams.LightComBaud = (int)numLightBaud.Value;
|
|
|
|
configParams.IODevName = tbIODevNum.Text;
|
|
configParams.IOCfgPath = tbIOCfgPath.Text;
|
|
configParams.PLC_IP = tbPLCIP.Text;
|
|
configParams.PLC_Rack = 0;
|
|
configParams.PLC_Solt = 1;
|
|
|
|
configParams.CamPath_1 = tbCamCfgPath.Text;
|
|
configParams.CamPath_2 = tbCamCfgPath2.Text;
|
|
configParams.CamIndex_1 = (int)numCamIndex.Value;
|
|
configParams.CamIndex_2 = (int)numCamIndex2.Value;
|
|
configParams.CamDev_1 = (int)numCamDev.Value;
|
|
configParams.CamDev_2 = (int)numCamDev2.Value;
|
|
|
|
configParams.DefectSrcImag.AutoSave = chkSave1.Checked;
|
|
configParams.DefectSrcImag.SavePath = tbDefectPath.Text;
|
|
configParams.DefectSrcImag.AutoDelete = chkDefect_Path_AutoClear.Checked;
|
|
configParams.DefectSrcImag.AutoDeleteDays = (double)numDefect_Path_AutoClear.Value;
|
|
|
|
configParams.DefectSmallImag.AutoSave = chkSave2.Checked;
|
|
configParams.DefectSmallImag.SavePath = tbDefectSmallPath.Text;
|
|
configParams.DefectSmallImag.AutoDelete = chkDefect_Small_Path_AutoClear.Checked;
|
|
configParams.DefectSmallImag.AutoDeleteDays = (double)numDefect_Small_Path_AutoClear.Value;
|
|
|
|
configParams.DefectSplicImag.AutoSave = chkSave3.Checked;
|
|
configParams.DefectSplicImag.SavePath = tbDefectCompressSavePath.Text;
|
|
configParams.DefectSplicImag.AutoDelete = chkDefect_Compress_SavePath_AutoClear.Checked;
|
|
configParams.DefectSplicImag.AutoDeleteDays = (double)numDefect_Compress_SavePath_AutoClear.Value;
|
|
|
|
configParams.AIModelPath = tbModelPath.Text;
|
|
configParams.ProductPath = tbPdtPath.Text;
|
|
configParams.LogPath = tbLogPath.Text;
|
|
configParams.AutoDeleteLog = ckbAutoClear.Checked;
|
|
configParams.AutoDeleteLogData = (double)numLogDays.Value;
|
|
|
|
configParams.ShowResetBtn = cbResetBtn.Checked;
|
|
configParams.ShowBuzz = cbBuzzShow.Checked;
|
|
configParams.ShowDoorAlm = cbDoorAlm.Checked;
|
|
|
|
configParams.Cm2px_x = (int)numViewX.Value;
|
|
configParams.Cm2px_y = (int)numViewY.Value;
|
|
configParams.MidCoin = (int)numMid.Value;
|
|
configParams.HolePx = (int)numKW.Value;
|
|
configParams.LCrop = (int)numL.Value;
|
|
configParams.RCrop = (int)numR.Value;
|
|
|
|
////////////////////Print//////////////////////////
|
|
configParams.EnableLabelPrint = this.cbOpenBarTenderPrint.Checked;
|
|
if (this.cboPrinters.SelectedItem != null)
|
|
configParams.LabelPrinterName = this.cboPrinters.SelectedItem.ToString();
|
|
|
|
configParams.EnableExcelPrint = this.cbOpenExcelPrint.Checked;
|
|
if (this.cboPrinters2.SelectedItem != null)
|
|
configParams.ExcelPrinterName = this.cboPrinters2.SelectedItem.ToString();
|
|
/////////////////////////////////////////////////
|
|
|
|
///////本地云端////////////////////////////
|
|
configParams.OpenCloud = this.cbOpenCloud.Checked;
|
|
configParams.CloudThisName = this.tbCloudName.Text;
|
|
configParams.CloudServerIP = this.tbCloudIP.Text;
|
|
configParams.CloudServerPort = (int)this.numCloudPort.Value;
|
|
configParams.CloudUser = this.tbCloudUser.Text;
|
|
configParams.CloudPassword = this.tbCloudPassword.Text;
|
|
///////////////////////////////////////////
|
|
///
|
|
configParams.Cam1_flipX = this.cbMX1.Checked;
|
|
configParams.Cam1_flipY = this.cbMY1.Checked;
|
|
configParams.Cam2_flipX = this.cbMX2.Checked;
|
|
configParams.Cam2_flipY = this.cbMY2.Checked;
|
|
|
|
|
|
ConfMgr.Instance.WriteSysConfParams(configParams);
|
|
}
|
|
|
|
#endregion
|
|
|
|
private void tbPath_Click(object sender, EventArgs e)
|
|
{
|
|
TextBox tb = (TextBox)sender;
|
|
string path = ConfMgr.SelectFolder(Application.StartupPath);
|
|
if (!string.IsNullOrWhiteSpace(path))
|
|
{
|
|
tb.Text = path;
|
|
}
|
|
|
|
}
|
|
private void btnClearPathClick(object sender, EventArgs e)
|
|
{
|
|
PictureBox pb = (PictureBox)sender;
|
|
string path = "";
|
|
if (pb.Name == btnClearDefect_Compress_SavePath.Name)
|
|
this.tbDefectCompressSavePath.Text = path;
|
|
else if (pb.Name == btnClearDefect_Path.Name)
|
|
this.tbDefectPath.Text = path;
|
|
else if (pb.Name == btnClearDefect_Small_Path.Name)
|
|
this.tbDefectSmallPath.Text = path;
|
|
}
|
|
private void tbPathFile_Click(object sender, EventArgs e)
|
|
{
|
|
TextBox tb = (TextBox)sender;
|
|
string path = ConfMgr.SelectFile("所有文件|*.*", Application.StartupPath);
|
|
if (!string.IsNullOrWhiteSpace(path))
|
|
{
|
|
if (tb.Name == tbIOCfgPath.Name)
|
|
this.tbIOCfgPath.Text = path;
|
|
else if (tb.Name == tbCamCfgPath.Name)
|
|
this.tbCamCfgPath.Text = path;
|
|
else if (tb.Name == tbCamCfgPath2.Name)
|
|
this.tbCamCfgPath2.Text = path;
|
|
}
|
|
}
|
|
|
|
private void tsbtnDataSave_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
string lsPath = ConfMgr.SelectFolder();
|
|
if (string.IsNullOrWhiteSpace(lsPath))
|
|
return;
|
|
|
|
//lsPath += "\\DB" + DateTime.Now.ToString("yyyyMMddHHmm") + ".bak";
|
|
lsPath += "\\backup_" + DateTime.Now.ToString("yyyyMMddHHmm") + ".sql";
|
|
Service.InitDB.BackupDataBase(lsPath);
|
|
MessageBox.Show("备份成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message, "失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
|
|
private void tsbtnDatImport_Click(object sender, EventArgs e)
|
|
{
|
|
try
|
|
{
|
|
string dbPath = ConfMgr.SelectFile();
|
|
if (string.IsNullOrWhiteSpace(dbPath))
|
|
return;
|
|
if (MessageBox.Show($"是否导入{dbPath}?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Information) == DialogResult.OK)
|
|
{
|
|
bool rel = Service.InitDB.RestoreDB(dbPath);
|
|
if (rel)
|
|
{
|
|
MessageBox.Show("导入成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
|
}
|
|
else
|
|
MessageBox.Show("导入失败!", "失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
MessageBox.Show(ex.Message, "失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
|
}
|
|
}
|
|
}
|
|
}
|