20260831功能同步:
1. 不同车间区分料框查询、料框解绑接口 2. 注释电池型号逻辑 3. 打开电池状况界面
This commit is contained in:
@@ -0,0 +1,386 @@
|
||||
using JinYuan.ControlCenters;
|
||||
using JinYuan.DAL.Models;
|
||||
using JinYuan.DAL.Service;
|
||||
using JinYuan.MES.Models;
|
||||
using JinYuan.Models;
|
||||
using JinYuan.VirtualDataLibrary;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Data;
|
||||
using System.Drawing;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using System.Windows.Forms;
|
||||
|
||||
namespace LargeSquareOne
|
||||
{
|
||||
public partial class FrmInterCfg : Form
|
||||
{
|
||||
public FrmInterCfg()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
InitDgv();
|
||||
}
|
||||
|
||||
private void InitDgv()
|
||||
{
|
||||
#region 料框码与车间
|
||||
DataGridViewTextBoxColumn column_ID = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
column_ID.HeaderText = "ID";
|
||||
column_ID.MinimumWidth = 6;
|
||||
column_ID.Name = "Column_ID";
|
||||
column_ID.Visible = false;
|
||||
column_ID.Width = 125;
|
||||
column_ID.DataPropertyName = "ID";
|
||||
|
||||
DataGridViewTextBoxColumn column_StartCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
column_StartCode.HeaderText = "料框码匹配编码(第4-7位)";
|
||||
column_StartCode.MinimumWidth = 6;
|
||||
column_StartCode.Name = "Column_StartCode";
|
||||
column_StartCode.Width = 225;
|
||||
column_StartCode.DataPropertyName = "start_code";
|
||||
column_StartCode.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
|
||||
column_StartCode.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
|
||||
|
||||
DataGridViewTextBoxColumn column_WorkshopCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
column_WorkshopCode.HeaderText = "车间";
|
||||
column_WorkshopCode.MinimumWidth = 6;
|
||||
column_WorkshopCode.Name = "Column_WorkshopCode";
|
||||
column_WorkshopCode.Width = 225;
|
||||
column_WorkshopCode.DataPropertyName = "workshop_code";
|
||||
column_WorkshopCode.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
|
||||
column_WorkshopCode.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
|
||||
|
||||
DataGridViewTextBoxColumn column_IsDeleted = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
column_IsDeleted.HeaderText = "是否删除";
|
||||
column_IsDeleted.MinimumWidth = 6;
|
||||
column_IsDeleted.Name = "Column_IsDeleted";
|
||||
column_IsDeleted.Visible = false;
|
||||
column_IsDeleted.Width = 125;
|
||||
column_IsDeleted.DataPropertyName = "is_deleted";
|
||||
|
||||
DataGridViewTextBoxColumn column_updateTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
column_updateTime.HeaderText = "更新时间";
|
||||
column_updateTime.MinimumWidth = 6;
|
||||
column_updateTime.Name = "Column_updateTime";
|
||||
column_updateTime.Visible = false;
|
||||
column_updateTime.Width = 125;
|
||||
column_updateTime.DataPropertyName = "update_time";
|
||||
|
||||
dgv_materialRul.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
column_ID,
|
||||
column_StartCode,
|
||||
column_WorkshopCode,
|
||||
column_IsDeleted,
|
||||
column_updateTime
|
||||
});
|
||||
#endregion
|
||||
|
||||
#region 车间与接口
|
||||
DataGridViewTextBoxColumn colInter_ID = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_ID.HeaderText = "ID";
|
||||
colInter_ID.MinimumWidth = 6;
|
||||
colInter_ID.Name = "colInter_ID";
|
||||
colInter_ID.Visible = false;
|
||||
colInter_ID.Width = 125;
|
||||
colInter_ID.DataPropertyName = "ID";
|
||||
|
||||
DataGridViewTextBoxColumn colInter_workShopCode = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_workShopCode.HeaderText = "车间编码";
|
||||
colInter_workShopCode.MinimumWidth = 6;
|
||||
colInter_workShopCode.Name = "colInter_workShopCode";
|
||||
colInter_workShopCode.Width = 225;
|
||||
colInter_workShopCode.DataPropertyName = "workshop_code";
|
||||
colInter_workShopCode.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
|
||||
colInter_workShopCode.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
|
||||
|
||||
DataGridViewTextBoxColumn colInter_interFlag = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_interFlag.HeaderText = "接口标识";
|
||||
colInter_interFlag.MinimumWidth = 6;
|
||||
colInter_interFlag.Name = "colInter_interFlag";
|
||||
colInter_interFlag.Width = 225;
|
||||
colInter_interFlag.DataPropertyName = "interface_flag";
|
||||
colInter_interFlag.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCellsExceptHeader;
|
||||
colInter_interFlag.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
|
||||
|
||||
DataGridViewTextBoxColumn colInter_interName = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_interName.HeaderText = "接口名称";
|
||||
colInter_interName.MinimumWidth = 6;
|
||||
colInter_interName.Name = "colInter_interName";
|
||||
colInter_interName.Width = 225;
|
||||
colInter_interName.DataPropertyName = "interface_name";
|
||||
colInter_interName.AutoSizeMode = DataGridViewAutoSizeColumnMode.ColumnHeader;
|
||||
colInter_interName.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
|
||||
|
||||
DataGridViewTextBoxColumn colInter_interUrl = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_interUrl.HeaderText = "接口URL地址";
|
||||
colInter_interUrl.MinimumWidth = 6;
|
||||
colInter_interUrl.Name = "colInter_interUrl";
|
||||
colInter_interUrl.Width = 225;
|
||||
colInter_interUrl.DataPropertyName = "interface_url";
|
||||
colInter_interUrl.AutoSizeMode = DataGridViewAutoSizeColumnMode.AllCells;
|
||||
colInter_interUrl.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleLeft;
|
||||
|
||||
DataGridViewTextBoxColumn colInter_IsDeleted = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_IsDeleted.HeaderText = "是否删除";
|
||||
colInter_IsDeleted.MinimumWidth = 6;
|
||||
colInter_IsDeleted.Name = "colInter_IsDeleted";
|
||||
colInter_IsDeleted.Visible = false;
|
||||
colInter_IsDeleted.Width = 125;
|
||||
colInter_IsDeleted.DataPropertyName = "is_deleted";
|
||||
|
||||
DataGridViewTextBoxColumn colInter_updateTime = new System.Windows.Forms.DataGridViewTextBoxColumn();
|
||||
colInter_updateTime.HeaderText = "更新时间";
|
||||
colInter_updateTime.MinimumWidth = 6;
|
||||
colInter_updateTime.Name = "colInter_updateTime";
|
||||
colInter_updateTime.Visible = false;
|
||||
colInter_updateTime.Width = 125;
|
||||
colInter_updateTime.DataPropertyName = "update_time";
|
||||
|
||||
dgv_workInterface.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
|
||||
colInter_ID,
|
||||
colInter_workShopCode,
|
||||
colInter_interFlag,
|
||||
colInter_interName,
|
||||
colInter_interUrl,
|
||||
colInter_IsDeleted,
|
||||
colInter_updateTime
|
||||
});
|
||||
#endregion
|
||||
}
|
||||
|
||||
private MaterialFrameRuleService ruleService;
|
||||
private WorkshopInterCfgService interService;
|
||||
|
||||
private void InitDgvData()
|
||||
{
|
||||
ruleService = new MaterialFrameRuleService(CommonMethods.db.Db);
|
||||
DataTable ruleDt = ruleService.GetDataTable();
|
||||
|
||||
bindingSource_frameRule.DataSource = ruleDt;
|
||||
dgv_materialRul.DataSource = bindingSource_frameRule;
|
||||
dgv_materialRul.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
|
||||
|
||||
interService = new WorkshopInterCfgService(CommonMethods.db.Db);
|
||||
DataTable interDt = interService.GetDataTable();
|
||||
|
||||
bindingSource_workInterface.DataSource = interDt;
|
||||
dgv_workInterface.DataSource = bindingSource_workInterface;
|
||||
dgv_workInterface.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
|
||||
}
|
||||
|
||||
private void FrmInterCfg_Load(object sender, EventArgs e)
|
||||
{
|
||||
InitDgvData();
|
||||
}
|
||||
|
||||
private void btn_exit_Click(object sender, EventArgs e)
|
||||
{
|
||||
this.Close();
|
||||
}
|
||||
|
||||
#region 料框码与车间
|
||||
private void btn_codeAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
bindingSource_frameRule.AddNew();
|
||||
}
|
||||
|
||||
private void btn_codeSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
DataTable dt = bindingSource_frameRule.DataSource as DataTable;
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
MaterialFrameRule model = null;
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
if (row.RowState == DataRowState.Deleted)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
model = row.ToModel<MaterialFrameRule>();
|
||||
|
||||
switch (row.RowState)
|
||||
{
|
||||
case DataRowState.Added:
|
||||
// 调用新增方法
|
||||
ruleService.Add(model);
|
||||
break;
|
||||
case DataRowState.Modified:
|
||||
// 调用修改方法
|
||||
ruleService.Update(model);
|
||||
break;
|
||||
//case DataRowState.Deleted:
|
||||
// // 调用删除方法
|
||||
// ruleService.SoftDelete(model.Id);
|
||||
// break;
|
||||
case DataRowState.Unchanged:
|
||||
// 未更改,不处理
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// 收集错误信息
|
||||
sb.AppendLine($"处理行时发生错误: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
// 如果有错误信息,一起展示
|
||||
if (sb.Length > 0)
|
||||
{
|
||||
MessageBox.Show(sb.ToString(), "错误信息", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
|
||||
DataTable ruleDt = ruleService.GetDataTable();
|
||||
bindingSource_frameRule.DataSource = ruleDt;
|
||||
}
|
||||
|
||||
private void btn_codeDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
// 获取选中的行删除
|
||||
foreach (DataGridViewRow row in dgv_materialRul.SelectedRows)
|
||||
{
|
||||
object colVal = row.Cells["Column_ID"].Value;
|
||||
|
||||
if (colVal == null)
|
||||
{
|
||||
bindingSource_frameRule.RemoveAt(row.Index);
|
||||
continue;
|
||||
}
|
||||
|
||||
int id = Convert.ToInt32(colVal);
|
||||
bindingSource_frameRule.RemoveAt(row.Index);
|
||||
ruleService.SoftDelete(id);
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
#region 车间与接口
|
||||
private void btn_interAdd_Click(object sender, EventArgs e)
|
||||
{
|
||||
bindingSource_workInterface.AddNew();
|
||||
}
|
||||
|
||||
private void btn_interDelete_Click(object sender, EventArgs e)
|
||||
{
|
||||
// 获取选中的行删除
|
||||
foreach (DataGridViewRow row in dgv_workInterface.SelectedRows)
|
||||
{
|
||||
object colVal = row.Cells["colInter_ID"].Value;
|
||||
|
||||
if (colVal == null)
|
||||
{
|
||||
bindingSource_workInterface.RemoveAt(row.Index);
|
||||
continue;
|
||||
}
|
||||
|
||||
int id = Convert.ToInt32(colVal);
|
||||
bindingSource_workInterface.RemoveAt(row.Index);
|
||||
interService.SoftDelete(id);
|
||||
}
|
||||
}
|
||||
|
||||
private void btn_interSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
DataTable dt = bindingSource_workInterface.DataSource as DataTable;
|
||||
|
||||
StringBuilder sb = new StringBuilder();
|
||||
WorkshopInterfaceConfig model = null;
|
||||
foreach (DataRow row in dt.Rows)
|
||||
{
|
||||
if (row.RowState == DataRowState.Deleted)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
try
|
||||
{
|
||||
model = row.ToModel<WorkshopInterfaceConfig>();
|
||||
|
||||
switch (row.RowState)
|
||||
{
|
||||
case DataRowState.Added:
|
||||
// 调用新增方法
|
||||
interService.Add(model);
|
||||
break;
|
||||
case DataRowState.Modified:
|
||||
// 调用修改方法
|
||||
interService.Update(model);
|
||||
break;
|
||||
//case DataRowState.Deleted:
|
||||
// // 调用删除方法
|
||||
// ruleService.SoftDelete(model.Id);
|
||||
// break;
|
||||
case DataRowState.Unchanged:
|
||||
// 未更改,不处理
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// 收集错误信息
|
||||
sb.AppendLine($"处理行时发生错误: {ex.Message}");
|
||||
}
|
||||
}
|
||||
|
||||
// 如果有错误信息,一起展示
|
||||
if (sb.Length > 0)
|
||||
{
|
||||
MessageBox.Show(sb.ToString(), "错误信息", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||
}
|
||||
|
||||
DataTable ruleDt = ruleService.GetDataTable();
|
||||
bindingSource_frameRule.DataSource = ruleDt;
|
||||
}
|
||||
#endregion
|
||||
|
||||
private void btn_test_Click(object sender, EventArgs e)
|
||||
{
|
||||
string trayId = "PLT60I10032567";
|
||||
string modelName = "LF350S";
|
||||
//UnbindTrayInfo(trayId).ConfigureAwait(false);
|
||||
|
||||
MaterialFrameRuleService service = new MaterialFrameRuleService(CommonMethods.db.Db);
|
||||
MaterialFrameRule rule = service.GetRuleByCode(trayId);
|
||||
|
||||
short model = CommonMethods.mesConfig.GetModelNum(modelName, rule?.Workshop_Code ?? string.Empty);
|
||||
|
||||
}
|
||||
|
||||
private async Task<(bool success, string mesMessage)> UnbindTrayInfo(string trayID)
|
||||
{
|
||||
try
|
||||
{
|
||||
MesUrlService service = new MesUrlService(CommonMethods.db.Db);
|
||||
string url = service.GetMesUrl(trayID, ConstValue.INTER_UnBindTray);
|
||||
if (string.IsNullOrEmpty(url))
|
||||
{
|
||||
throw new ArgumentException($"未找到{ConstValue.INTER_UnBindTray}对应的MES接口地址");
|
||||
}
|
||||
|
||||
var (success, mesMessage) = await CommonMethods.hbgMes.UnbindTrayInfosAsync(
|
||||
url,
|
||||
CommonMethods.mesConfig.equipNum,
|
||||
trayID
|
||||
).ConfigureAwait(false);
|
||||
|
||||
return (success, mesMessage);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
return (false, $"MES解绑失败{ex.Message}");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user