新增九菱设备采集插件,更改点胶称重下拉框名字不对问题
| | |
| | | //设备列表接口 |
| | | string urls = url + EquipmentType.Nine; |
| | | |
| | | CustomWriteLog("获取工艺参数接口:'"+ urls + "'", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 准备要发送的表单数据 |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | JsonEquipmentData jsonEquipment = await EquipmentList(urls, postData, "POST"); |
| | |
| | | //获取参数 获取每个设备对应的所有参数 |
| | | JsonEquipmentData jsonEquipment = await FindAllDevicePropsDetailByTimeRange(Url, token, nos, TimeDate, time); |
| | | |
| | | var JsonData = "{\"data\":["; |
| | | CustomWriteLog("01" , DateTime.Now.ToString("yyyy-MM-dd")); |
| | | //通过每个设备进行循环赋值 |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | if (jsonEquipment == null) |
| | | { |
| | | //获取设备对应的编码 判断编码是否满足为螺母压装设备 |
| | | if (jsonEquipment.data[i].deviceNo.Contains("CMR-ZZ-SE-")) |
| | | CustomWriteLog("jsonEquipment对象为空", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | |
| | | if (jsonEquipment.data == null) |
| | | { |
| | | CustomWriteLog("data属性为空",DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | |
| | | var JsonData = "{\"data\":["; |
| | | CustomWriteLog("开始循环工艺参数总数为::'" + jsonEquipment.data.Count + "'", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | try |
| | | { |
| | | //通过每个设备进行循环赋值 |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | { |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | CustomWriteLog("当前循环 第 '"+i+"' 次", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | //获取设备对应的编码 判断编码是否满足为螺母压装设备 |
| | | if (jsonEquipment.data[i].deviceNo.Contains("CMR-ZZ-SE-")) |
| | | { |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | //日志 |
| | | CustomWriteLog("1-" + k + ":" + jsonEquipment.data[i].props[j].datas[k].value, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取参数的类型 |
| | | valueData value = JsonConvert.DeserializeObject<valueData>(jsonEquipment.data[i].props[j].datas[k].value); |
| | | |
| | | //日志 |
| | | CustomWriteLog("2", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | if (value.type == "良品") |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"OK\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | //日志 |
| | | CustomWriteLog("1-" + k + ":" + jsonEquipment.data[i].props[j].datas[k].value, DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取参数的类型 |
| | | valueData value = JsonConvert.DeserializeObject<valueData>(jsonEquipment.data[i].props[j].datas[k].value); |
| | | |
| | | //日志 |
| | | CustomWriteLog("2", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | if (value.type == "良品") |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"OK\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | else |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"NG\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"生产周期\",\"HResult\":\"" + value.beat + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | else |
| | | } |
| | | |
| | | JsonEquipmentData data = await FindDevicePropCalc(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | |
| | | for (int j = 0; j < data.data.Count; j++) |
| | | { |
| | | //合格数 |
| | | if (data.data[j].propId == 469) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"NG\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"良品数\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].sum + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"生产周期\",\"HResult\":\"" + value.beat + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | //不良数 |
| | | else if (data.data[j].propId == 470) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"NG数量\",\"HResult\":\"NG\",\"HCount\":" + data.data[j].sum + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | } |
| | | } |
| | | |
| | | JsonEquipmentData data = await FindDevicePropCalc(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | |
| | | for (int j = 0; j < data.data.Count; j++) |
| | | else |
| | | { |
| | | //合格数 |
| | | if (data.data[j].propId == 469) |
| | | //循环 螺母压装以外的设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"良品数\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].sum + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\"" + jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | CustomWriteLog("工艺参数具体值:{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\"" + jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | } |
| | | //不良数 |
| | | else if (data.data[j].propId == 470) |
| | | |
| | | //获取设备时间段产量 |
| | | JsonEquipmentData data = await FindProdByNosAndTime(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | for (int j = 0; j < data.data.Count; j++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"NG数量\",\"HResult\":\"NG\",\"HCount\":" + data.data[j].sum + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"生产数量\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].prod + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | CustomWriteLog("设备产量值:{\"HDate\":\"" + time + "\",\"HTechParamName\":\"生产数量\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].prod + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | } |
| | | } |
| | | else { |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | JsonData += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\""+ jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | } |
| | | |
| | | //获取设备时间段产量 |
| | | JsonEquipmentData data = await FindProdByNosAndTime(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | |
| | | for (int j = 0; j < data.data.Count; j++) |
| | | { |
| | | |
| | | JsonData += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"生产数量\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].prod + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | CustomWriteLog("EXCEPTION_CAUGHT", $"{DateTime.Now:yyyy-MM-dd HH:mm:ss} - 异常信息:{ex.ToString()}"); |
| | | } |
| | | |
| | | CustomWriteLog("02", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | CustomWriteLog("工艺参数与产量循环结束", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取设备运行状态 |
| | | var EquipmentStaus = await FindDeviceStatusByNos(Url, token, nos); |
| | |
| | | } |
| | | |
| | | JsonResult HEqDate = await FindDeviceStatusTimeByNo(Url, token, EquipmentStaus.data[i].no, HBegDate, HEndDate); |
| | | |
| | | // 记录开机时长 |
| | | CustomWriteLog("设备开机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"开机时长\",\"HResult\":\"" + ((float)(HEqDate.data.onlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录关机时长 |
| | | CustomWriteLog("设备关机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"关机时长\",\"HResult\":\"" + ((float)(HEqDate.data.offlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录停机时长 |
| | | CustomWriteLog("设备停机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"停机时长\",\"HResult\":\"" + ((float)(HEqDate.data.standbyTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录运行时长 |
| | | CustomWriteLog("设备运行时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"运行时长\",\"HResult\":\"" + ((float)(HEqDate.data.runTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | JsonData += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"开机时长\",\"HResult\":\"" + ((float)(HEqDate.data.onlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | JsonData += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"关机时长\",\"HResult\":\"" + ((float)(HEqDate.data.offlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | |
| | | } |
| | | } |
| | | |
| | | CustomWriteLog("03", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | CustomWriteLog("结束所有", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | JsonData = JsonData.Substring(0, JsonData.Length - 1); |
| | | JsonData += "]}"; |
| | |
| | | values(getdate(),'"+ data.data[i].HSourceCode + "',0,'" + data.data[i].HTechParamName + "'," + data.data[i].HCount |
| | | + ",'" + data.data[i].HDate + "','" + data.data[i].HResult + "','" + data.data[i].HProcNumber + "',0)"); |
| | | |
| | | ListData.Items.Add("时间:" + data.data[i].HDate + |
| | | ",工艺参数:" + data.data[i].HTechParamName + |
| | | ",工艺参数值:" + data.data[i].HResult); |
| | | ListData.Items.Add("时间:" + data.data[i].HDate +",工艺参数:" + data.data[i].HTechParamName +",工艺参数值:" + data.data[i].HResult); |
| | | } |
| | | } |
| | | |
| | |
| | | </ItemGroup> |
| | | <ItemGroup> |
| | | <Compile Include="DBHelper.cs" /> |
| | | <Compile Include="EquipmentCollectionForm_JiuLing.cs"> |
| | | <SubType>Form</SubType> |
| | | </Compile> |
| | | <Compile Include="EquipmentCollectionForm_JiuLing.Designer.cs"> |
| | | <DependentUpon>EquipmentCollectionForm_JiuLing.cs</DependentUpon> |
| | | </Compile> |
| | | <Compile Include="EquipmentCollectionForm.cs"> |
| | | <SubType>Form</SubType> |
| | | </Compile> |
| | |
| | | <Compile Include="json.cs" /> |
| | | <Compile Include="Program.cs" /> |
| | | <Compile Include="Properties\AssemblyInfo.cs" /> |
| | | <EmbeddedResource Include="EquipmentCollectionForm_JiuLing.resx"> |
| | | <DependentUpon>EquipmentCollectionForm_JiuLing.cs</DependentUpon> |
| | | </EmbeddedResource> |
| | | <EmbeddedResource Include="EquipmentCollectionForm.resx"> |
| | | <DependentUpon>EquipmentCollectionForm.cs</DependentUpon> |
| | | </EmbeddedResource> |
New file |
| | |
| | | |
| | | namespace EquipmentCollectionForm |
| | | { |
| | | partial class EquipmentCollectionForm_JiuLing |
| | | { |
| | | /// <summary> |
| | | /// Required designer variable. |
| | | /// </summary> |
| | | private System.ComponentModel.IContainer components = null; |
| | | |
| | | /// <summary> |
| | | /// Clean up any resources being used. |
| | | /// </summary> |
| | | /// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param> |
| | | protected override void Dispose(bool disposing) |
| | | { |
| | | if (disposing && (components != null)) |
| | | { |
| | | components.Dispose(); |
| | | } |
| | | base.Dispose(disposing); |
| | | } |
| | | |
| | | #region Windows Form Designer generated code |
| | | |
| | | /// <summary> |
| | | /// Required method for Designer support - do not modify |
| | | /// the contents of this method with the code editor. |
| | | /// </summary> |
| | | private void InitializeComponent() |
| | | { |
| | | this.components = new System.ComponentModel.Container(); |
| | | this.cmbEquipFile = new System.Windows.Forms.ComboBox(); |
| | | this.txtEquipFile = new System.Windows.Forms.Label(); |
| | | this.btnBegin = new System.Windows.Forms.Button(); |
| | | this.txtBegin = new System.Windows.Forms.TextBox(); |
| | | this.txtEnd = new System.Windows.Forms.TextBox(); |
| | | this.btnEnd = new System.Windows.Forms.Button(); |
| | | this.btnSave = new System.Windows.Forms.Button(); |
| | | this.label4 = new System.Windows.Forms.Label(); |
| | | this.txtLj = new System.Windows.Forms.TextBox(); |
| | | this.btnLj = new System.Windows.Forms.Button(); |
| | | this.txtHBathNo = new System.Windows.Forms.TextBox(); |
| | | this.HBathNo = new System.Windows.Forms.Label(); |
| | | this.btnRest = new System.Windows.Forms.Button(); |
| | | this.ListData = new System.Windows.Forms.ListBox(); |
| | | this.txtHMaterNumber = new System.Windows.Forms.TextBox(); |
| | | this.HMaterID = new System.Windows.Forms.Label(); |
| | | this.timer = new System.Windows.Forms.Timer(this.components); |
| | | this.Time_CLHB = new System.Windows.Forms.Timer(this.components); |
| | | this.labHMakerID = new System.Windows.Forms.Label(); |
| | | this.txtHMakerNumber = new System.Windows.Forms.TextBox(); |
| | | this.label5 = new System.Windows.Forms.Label(); |
| | | this.txtHMaker = new System.Windows.Forms.TextBox(); |
| | | this.label6 = new System.Windows.Forms.Label(); |
| | | this.SuspendLayout(); |
| | | // |
| | | // cmbEquipFile |
| | | // |
| | | this.cmbEquipFile.FormattingEnabled = true; |
| | | this.cmbEquipFile.Location = new System.Drawing.Point(108, 62); |
| | | this.cmbEquipFile.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.cmbEquipFile.Name = "cmbEquipFile"; |
| | | this.cmbEquipFile.Size = new System.Drawing.Size(166, 23); |
| | | this.cmbEquipFile.TabIndex = 13; |
| | | this.cmbEquipFile.SelectedIndexChanged += new System.EventHandler(this.cmbEquipFile_SelectedIndexChanged); |
| | | // |
| | | // txtEquipFile |
| | | // |
| | | this.txtEquipFile.AutoSize = true; |
| | | this.txtEquipFile.Location = new System.Drawing.Point(55, 68); |
| | | this.txtEquipFile.Name = "txtEquipFile"; |
| | | this.txtEquipFile.Size = new System.Drawing.Size(45, 15); |
| | | this.txtEquipFile.TabIndex = 14; |
| | | this.txtEquipFile.Text = "设备:"; |
| | | // |
| | | // btnBegin |
| | | // |
| | | this.btnBegin.Location = new System.Drawing.Point(40, 105); |
| | | this.btnBegin.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnBegin.Name = "btnBegin"; |
| | | this.btnBegin.Size = new System.Drawing.Size(62, 31); |
| | | this.btnBegin.TabIndex = 15; |
| | | this.btnBegin.Text = "开始"; |
| | | this.btnBegin.UseVisualStyleBackColor = true; |
| | | this.btnBegin.Click += new System.EventHandler(this.btnBegin_Click); |
| | | // |
| | | // txtBegin |
| | | // |
| | | this.txtBegin.Location = new System.Drawing.Point(108, 110); |
| | | this.txtBegin.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtBegin.Name = "txtBegin"; |
| | | this.txtBegin.Size = new System.Drawing.Size(166, 25); |
| | | this.txtBegin.TabIndex = 16; |
| | | // |
| | | // txtEnd |
| | | // |
| | | this.txtEnd.Location = new System.Drawing.Point(419, 112); |
| | | this.txtEnd.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtEnd.Name = "txtEnd"; |
| | | this.txtEnd.Size = new System.Drawing.Size(166, 25); |
| | | this.txtEnd.TabIndex = 18; |
| | | // |
| | | // btnEnd |
| | | // |
| | | this.btnEnd.Location = new System.Drawing.Point(351, 107); |
| | | this.btnEnd.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnEnd.Name = "btnEnd"; |
| | | this.btnEnd.Size = new System.Drawing.Size(62, 31); |
| | | this.btnEnd.TabIndex = 17; |
| | | this.btnEnd.Text = "结束"; |
| | | this.btnEnd.UseVisualStyleBackColor = true; |
| | | this.btnEnd.Click += new System.EventHandler(this.btnEnd_Click); |
| | | // |
| | | // btnSave |
| | | // |
| | | this.btnSave.Location = new System.Drawing.Point(655, 51); |
| | | this.btnSave.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnSave.Name = "btnSave"; |
| | | this.btnSave.Size = new System.Drawing.Size(102, 31); |
| | | this.btnSave.TabIndex = 19; |
| | | this.btnSave.Text = "保存"; |
| | | this.btnSave.UseVisualStyleBackColor = true; |
| | | this.btnSave.Click += new System.EventHandler(this.btnSave_Click); |
| | | // |
| | | // label4 |
| | | // |
| | | this.label4.AutoSize = true; |
| | | this.label4.Location = new System.Drawing.Point(29, 168); |
| | | this.label4.Name = "label4"; |
| | | this.label4.Size = new System.Drawing.Size(45, 15); |
| | | this.label4.TabIndex = 21; |
| | | this.label4.Text = "路径:"; |
| | | // |
| | | // txtLj |
| | | // |
| | | this.txtLj.Location = new System.Drawing.Point(93, 166); |
| | | this.txtLj.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtLj.Name = "txtLj"; |
| | | this.txtLj.Size = new System.Drawing.Size(541, 25); |
| | | this.txtLj.TabIndex = 20; |
| | | // |
| | | // btnLj |
| | | // |
| | | this.btnLj.Location = new System.Drawing.Point(647, 158); |
| | | this.btnLj.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnLj.Name = "btnLj"; |
| | | this.btnLj.Size = new System.Drawing.Size(102, 35); |
| | | this.btnLj.TabIndex = 22; |
| | | this.btnLj.Text = "选择路径"; |
| | | this.btnLj.UseVisualStyleBackColor = true; |
| | | this.btnLj.Click += new System.EventHandler(this.btnLj_Click); |
| | | // |
| | | // txtHBathNo |
| | | // |
| | | this.txtHBathNo.Location = new System.Drawing.Point(419, 55); |
| | | this.txtHBathNo.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHBathNo.Name = "txtHBathNo"; |
| | | this.txtHBathNo.Size = new System.Drawing.Size(166, 25); |
| | | this.txtHBathNo.TabIndex = 24; |
| | | this.txtHBathNo.KeyUp += new System.Windows.Forms.KeyEventHandler(this.txtHBathNo_KeyUp); |
| | | // |
| | | // HBathNo |
| | | // |
| | | this.HBathNo.AutoSize = true; |
| | | this.HBathNo.Location = new System.Drawing.Point(356, 59); |
| | | this.HBathNo.Name = "HBathNo"; |
| | | this.HBathNo.Size = new System.Drawing.Size(52, 15); |
| | | this.HBathNo.TabIndex = 25; |
| | | this.HBathNo.Text = "批次号"; |
| | | // |
| | | // btnRest |
| | | // |
| | | this.btnRest.Location = new System.Drawing.Point(655, 102); |
| | | this.btnRest.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnRest.Name = "btnRest"; |
| | | this.btnRest.Size = new System.Drawing.Size(102, 31); |
| | | this.btnRest.TabIndex = 26; |
| | | this.btnRest.Text = "重置"; |
| | | this.btnRest.UseVisualStyleBackColor = true; |
| | | this.btnRest.Click += new System.EventHandler(this.btnRest_Click); |
| | | // |
| | | // ListData |
| | | // |
| | | this.ListData.FormattingEnabled = true; |
| | | this.ListData.ItemHeight = 15; |
| | | this.ListData.Location = new System.Drawing.Point(-2, 199); |
| | | this.ListData.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.ListData.Name = "ListData"; |
| | | this.ListData.Size = new System.Drawing.Size(829, 394); |
| | | this.ListData.TabIndex = 27; |
| | | // |
| | | // txtHMaterNumber |
| | | // |
| | | this.txtHMaterNumber.Location = new System.Drawing.Point(419, 84); |
| | | this.txtHMaterNumber.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHMaterNumber.Name = "txtHMaterNumber"; |
| | | this.txtHMaterNumber.Size = new System.Drawing.Size(166, 25); |
| | | this.txtHMaterNumber.TabIndex = 28; |
| | | // |
| | | // HMaterID |
| | | // |
| | | this.HMaterID.AutoSize = true; |
| | | this.HMaterID.Location = new System.Drawing.Point(290, 62); |
| | | this.HMaterID.Name = "HMaterID"; |
| | | this.HMaterID.Size = new System.Drawing.Size(71, 15); |
| | | this.HMaterID.TabIndex = 29; |
| | | this.HMaterID.Text = "HMaterID"; |
| | | this.HMaterID.Visible = false; |
| | | // |
| | | // timer |
| | | // |
| | | this.timer.Interval = 60000; |
| | | this.timer.Tick += new System.EventHandler(this.timer_Tick); |
| | | // |
| | | // Time_CLHB |
| | | // |
| | | this.Time_CLHB.Interval = 600000; |
| | | this.Time_CLHB.Tick += new System.EventHandler(this.Time_CLHB_Tick); |
| | | // |
| | | // labHMakerID |
| | | // |
| | | this.labHMakerID.AutoSize = true; |
| | | this.labHMakerID.Location = new System.Drawing.Point(599, 17); |
| | | this.labHMakerID.Name = "labHMakerID"; |
| | | this.labHMakerID.Size = new System.Drawing.Size(95, 15); |
| | | this.labHMakerID.TabIndex = 34; |
| | | this.labHMakerID.Text = "labHMakerID"; |
| | | this.labHMakerID.Visible = false; |
| | | // |
| | | // txtHMakerNumber |
| | | // |
| | | this.txtHMakerNumber.Location = new System.Drawing.Point(419, 14); |
| | | this.txtHMakerNumber.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHMakerNumber.Name = "txtHMakerNumber"; |
| | | this.txtHMakerNumber.Size = new System.Drawing.Size(166, 25); |
| | | this.txtHMakerNumber.TabIndex = 33; |
| | | // |
| | | // label5 |
| | | // |
| | | this.label5.AutoSize = true; |
| | | this.label5.Location = new System.Drawing.Point(356, 18); |
| | | this.label5.Name = "label5"; |
| | | this.label5.Size = new System.Drawing.Size(45, 15); |
| | | this.label5.TabIndex = 32; |
| | | this.label5.Text = "编码:"; |
| | | // |
| | | // txtHMaker |
| | | // |
| | | this.txtHMaker.Location = new System.Drawing.Point(111, 14); |
| | | this.txtHMaker.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHMaker.Name = "txtHMaker"; |
| | | this.txtHMaker.Size = new System.Drawing.Size(168, 25); |
| | | this.txtHMaker.TabIndex = 20; |
| | | this.txtHMaker.Enter += new System.EventHandler(this.txtHMaker_Enter); |
| | | this.txtHMaker.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtHMaker_KeyDown); |
| | | this.txtHMaker.Leave += new System.EventHandler(this.txtHMaker_Leave); |
| | | // |
| | | // label6 |
| | | // |
| | | this.label6.AutoSize = true; |
| | | this.label6.Location = new System.Drawing.Point(42, 18); |
| | | this.label6.Name = "label6"; |
| | | this.label6.Size = new System.Drawing.Size(60, 15); |
| | | this.label6.TabIndex = 31; |
| | | this.label6.Text = "制单人:"; |
| | | // |
| | | // EquipmentCollectionForm_JiuLing |
| | | // |
| | | this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F); |
| | | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |
| | | this.ClientSize = new System.Drawing.Size(837, 602); |
| | | this.Controls.Add(this.labHMakerID); |
| | | this.Controls.Add(this.txtHMakerNumber); |
| | | this.Controls.Add(this.label5); |
| | | this.Controls.Add(this.txtHMaker); |
| | | this.Controls.Add(this.label6); |
| | | this.Controls.Add(this.HMaterID); |
| | | this.Controls.Add(this.txtHMaterNumber); |
| | | this.Controls.Add(this.ListData); |
| | | this.Controls.Add(this.btnRest); |
| | | this.Controls.Add(this.HBathNo); |
| | | this.Controls.Add(this.txtHBathNo); |
| | | this.Controls.Add(this.btnLj); |
| | | this.Controls.Add(this.label4); |
| | | this.Controls.Add(this.txtLj); |
| | | this.Controls.Add(this.btnSave); |
| | | this.Controls.Add(this.txtEnd); |
| | | this.Controls.Add(this.btnEnd); |
| | | this.Controls.Add(this.txtBegin); |
| | | this.Controls.Add(this.btnBegin); |
| | | this.Controls.Add(this.txtEquipFile); |
| | | this.Controls.Add(this.cmbEquipFile); |
| | | this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.Name = "EquipmentCollectionForm_JiuLing"; |
| | | this.Text = "设备数据采集"; |
| | | this.Activated += new System.EventHandler(this.EquipmentCollectionForm_Activated); |
| | | this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.EquipmentCollectionForm_FormClosing); |
| | | this.Load += new System.EventHandler(this.EquipmentCollectionForm_Load); |
| | | this.ResumeLayout(false); |
| | | this.PerformLayout(); |
| | | |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | private System.Windows.Forms.ComboBox cmbEquipFile; |
| | | private System.Windows.Forms.Label txtEquipFile; |
| | | private System.Windows.Forms.Button btnBegin; |
| | | private System.Windows.Forms.TextBox txtBegin; |
| | | private System.Windows.Forms.TextBox txtEnd; |
| | | private System.Windows.Forms.Button btnEnd; |
| | | private System.Windows.Forms.Button btnSave; |
| | | private System.Windows.Forms.Label label4; |
| | | private System.Windows.Forms.TextBox txtLj; |
| | | private System.Windows.Forms.Button btnLj; |
| | | private System.Windows.Forms.TextBox txtHBathNo; |
| | | private System.Windows.Forms.Label HBathNo; |
| | | private System.Windows.Forms.Button btnRest; |
| | | private System.Windows.Forms.ListBox ListData; |
| | | private System.Windows.Forms.TextBox txtHMaterNumber; |
| | | private System.Windows.Forms.Label HMaterID; |
| | | private System.Windows.Forms.Timer Time_CLHB; |
| | | private System.Windows.Forms.Timer timer; |
| | | private System.Windows.Forms.Label labHMakerID; |
| | | private System.Windows.Forms.TextBox txtHMakerNumber; |
| | | private System.Windows.Forms.Label label5; |
| | | private System.Windows.Forms.TextBox txtHMaker; |
| | | private System.Windows.Forms.Label label6; |
| | | } |
| | | } |
New file |
| | |
| | | using Newtonsoft.Json; |
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.ComponentModel; |
| | | using System.Data; |
| | | using System.Drawing; |
| | | using System.IO; |
| | | using System.Linq; |
| | | using System.Net.Http; |
| | | using System.Text; |
| | | using System.Threading.Tasks; |
| | | using System.Web; |
| | | using System.Windows.Forms; |
| | | |
| | | namespace EquipmentCollectionForm |
| | | { |
| | | public partial class EquipmentCollectionForm_JiuLing : Form |
| | | { |
| | | private json objJsonResult = new json(); |
| | | DataTable dt = new DataTable(); |
| | | public DBHelper oCN = new DBHelper(); |
| | | public string TimeDate = ""; |
| | | public EquipmentCollectionForm_JiuLing() |
| | | { |
| | | InitializeComponent(); |
| | | } |
| | | |
| | | private void EquipmentCollectionForm_Load(object sender, EventArgs e) |
| | | { |
| | | this.txtBegin.ReadOnly = true; |
| | | this.txtEnd.ReadOnly = true; |
| | | this.txtLj.ReadOnly = true; |
| | | this.btnSave.Enabled = false; |
| | | this.txtHMaterNumber.ReadOnly = true; |
| | | //this.btnRest.Enabled = false; |
| | | //制单编码只读 |
| | | this.txtHMakerNumber.ReadOnly = true; |
| | | //制单人提示 |
| | | this.txtHMaker.ForeColor = Color.LightGray; |
| | | this.txtHMaker.Text = "请输入用户编码!"; |
| | | |
| | | bindCbox(); |
| | | |
| | | } |
| | | |
| | | private void btnBegin_Click(object sender, EventArgs e) |
| | | { |
| | | if (this.txtHBathNo.Text == "" || this.txtHBathNo.ReadOnly == false) |
| | | //if (false) |
| | | { |
| | | MessageBox.Show("请输入批次号进行确认!"); |
| | | } |
| | | else |
| | | { |
| | | this.txtBegin.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | //this.txtBegin.Text = "2024-11-21 13:40:27"; |
| | | this.btnBegin.Enabled = false; |
| | | if (cmbEquipFile.SelectedIndex == 1) |
| | | { |
| | | this.txtHBathNo.ReadOnly = true; |
| | | this.timer.Enabled = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void btnEnd_Click(object sender, EventArgs e) |
| | | { |
| | | if (this.txtBegin.Text == "") |
| | | { |
| | | MessageBox.Show("请点击开始按钮进行开始确认!"); |
| | | } |
| | | else |
| | | { |
| | | this.txtEnd.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | //this.txtEnd.Text = "2024-09-24 09:52:39"; |
| | | this.btnEnd.Enabled = false; |
| | | |
| | | if (cmbEquipFile.SelectedIndex == 1) |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | private void btnLj_Click(object sender, EventArgs e) |
| | | { |
| | | if (this.txtEnd.Text == "") |
| | | { |
| | | MessageBox.Show("请点击结束按钮进行结束确认!"); |
| | | } |
| | | else |
| | | { |
| | | //路径赋值给文本 |
| | | using (OpenFileDialog openFile = new OpenFileDialog()) |
| | | { |
| | | openFile.Multiselect = true; // 允许选择多个文件 |
| | | DialogResult result = openFile.ShowDialog(); |
| | | if (result == DialogResult.OK) |
| | | { |
| | | //保存按钮灰掉 |
| | | this.btnSave.Enabled = true; |
| | | |
| | | string selectedFolderPath = openFile.FileName; |
| | | this.txtLj.Text = selectedFolderPath; |
| | | |
| | | objJsonResult = Xt_CSVReadText(openFile.FileNames, 1); |
| | | dt = objJsonResult.dataTable; |
| | | |
| | | if (objJsonResult.code == "0") |
| | | { |
| | | MessageBox.Show(objJsonResult.Message); |
| | | } |
| | | else |
| | | { |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | | ListData.Items.Add("底孔直径:" + dt.Rows[i]["BottomHoleDiameter"].ToString() + |
| | | ",有无螺牙检测数据:" + dt.Rows[i]["TestingData"].ToString() + |
| | | ",有无螺牙检测结果:" + dt.Rows[i]["DetectionResult"].ToString() + |
| | | ",时间:" + dt.Rows[i]["HDate"].ToString()); |
| | | } |
| | | |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | //读取CSV文件数据 根据文件路径找到对应文件 并获取对应的数据 |
| | | public json Xt_CSVReadText(string[] FilePath, int num) |
| | | { |
| | | try |
| | | { |
| | | DataTable dt = new DataTable(num.ToString()); |
| | | dt.Columns.Add("BottomHoleDiameter"); |
| | | dt.Columns.Add("TestingData"); |
| | | dt.Columns.Add("DetectionResult"); |
| | | dt.Columns.Add("HDate"); |
| | | |
| | | DataTable dt2 = new DataTable(); |
| | | for (int u = 0; u < FilePath.Length; u++) |
| | | { |
| | | using (StreamReader sr = new StreamReader(FilePath[u], Encoding.GetEncoding("gb2312"))) |
| | | { |
| | | string[] headers = sr.ReadLine()?.Split(','); |
| | | if (headers != null && u == 0) |
| | | { |
| | | foreach (var header in headers) |
| | | { |
| | | dt2.Columns.Add(header.Trim()); |
| | | } |
| | | } |
| | | |
| | | string line; |
| | | while ((line = sr.ReadLine()) != null) |
| | | { |
| | | var values = line.Split(','); |
| | | DataRow row = dt2.NewRow(); |
| | | |
| | | for (int i = 0; i < values.Length; i++) |
| | | { |
| | | // 这里可能需要添加类型转换和错误处理 |
| | | row[i] = values[i].Trim(); |
| | | } |
| | | |
| | | dt2.Rows.Add(row); |
| | | } |
| | | } |
| | | } |
| | | DateTime HBegin = DateTime.Parse(this.txtBegin.Text); |
| | | DateTime HEnd = DateTime.Parse(this.txtEnd.Text); |
| | | |
| | | for (int i = 0; i < dt2.Rows.Count; i++) |
| | | { |
| | | for (int j = 0; j < 2; j++) |
| | | { |
| | | DateTime Now = DateTime.Parse(dt2.Rows[i][dt2.Columns[6]].ToString() + " " + dt2.Rows[i][dt2.Columns[7]].ToString()); |
| | | if (Now >= HBegin && Now <= HEnd) |
| | | { |
| | | DataRow dr = dt.NewRow(); |
| | | dr["BottomHoleDiameter"] = dt2.Rows[i][dt2.Columns[j]].ToString(); |
| | | dr["TestingData"] = dt2.Rows[i][dt2.Columns[j + 2]].ToString(); |
| | | dr["DetectionResult"] = dt2.Rows[i][dt2.Columns[j + 4]].ToString(); |
| | | dr["HDate"] = DateTime.Parse(dt2.Rows[i][dt2.Columns[6]].ToString() + " " + dt2.Rows[i][dt2.Columns[7]].ToString()).ToString("yyyy-MM-dd HH:mm:ss"); |
| | | dt.Rows.Add(dr); |
| | | } |
| | | } |
| | | } |
| | | |
| | | objJsonResult.code = "1"; |
| | | objJsonResult.count = 1; |
| | | objJsonResult.Message = ""; |
| | | objJsonResult.dataTable = dt; |
| | | return objJsonResult; |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | objJsonResult.code = "0"; |
| | | objJsonResult.count = 0; |
| | | objJsonResult.Message = e.Message; |
| | | objJsonResult.dataTable = null; |
| | | return objJsonResult; |
| | | } |
| | | } |
| | | |
| | | |
| | | private void txtHBathNo_KeyUp(object sender, KeyEventArgs e) |
| | | { |
| | | if (e.KeyCode == Keys.Enter) |
| | | { |
| | | if (this.txtHMakerNumber.Text == "") |
| | | { |
| | | MessageBox.Show("请输入制单人信息!"); |
| | | } |
| | | else |
| | | { |
| | | Get_DisplayBard(); |
| | | } |
| | | //this.txtHBathNo.ReadOnly = true; |
| | | |
| | | } |
| | | } |
| | | |
| | | //查询条码数据 |
| | | public void Get_DisplayBard() |
| | | { |
| | | string HBarCode = this.txtHBathNo.Text; |
| | | DataSet ds = oCN.RunProcReturn("select HBatchNo,m.HNumber,a.HMaterID from Gy_BarCodeBill a left join Gy_Material m on a.HMaterID = m.HItemID where HBarCode='" + HBarCode + "'", "Gy_BarCodeBill"); |
| | | |
| | | if (ds.Tables[0].Rows.Count == 0) |
| | | { |
| | | MessageBox.Show("条码查无数据!"); |
| | | } |
| | | else |
| | | { |
| | | this.txtHBathNo.Text = ds.Tables[0].Rows[0]["HBatchNo"].ToString(); |
| | | this.txtHMaterNumber.Text = ds.Tables[0].Rows[0]["HNumber"].ToString(); |
| | | this.HMaterID.Text = ds.Tables[0].Rows[0]["HMaterID"].ToString(); |
| | | } |
| | | |
| | | this.txtHBathNo.ReadOnly = true; |
| | | } |
| | | |
| | | private void btnRest_Click(object sender, EventArgs e) |
| | | { |
| | | this.txtHBathNo.Text = ""; |
| | | this.txtHMaterNumber.Text = ""; |
| | | this.HMaterID.Text = "0"; |
| | | this.txtHBathNo.ReadOnly = false; |
| | | |
| | | this.btnBegin.Enabled = true; |
| | | this.txtBegin.Text = ""; |
| | | |
| | | this.btnEnd.Enabled = true; |
| | | this.txtEnd.Text = ""; |
| | | |
| | | this.btnSave.Enabled = false; |
| | | |
| | | this.txtLj.Text = ""; |
| | | |
| | | this.ListData.Items.Clear(); |
| | | this.timer.Enabled = false; |
| | | } |
| | | |
| | | private async void btnSave_Click(object sender, EventArgs e) |
| | | { |
| | | DialogResult dr = MessageBox.Show("确认保存?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); |
| | | |
| | | if (dr == DialogResult.Yes) |
| | | { |
| | | |
| | | string Url = DBHelper.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "Config/SQLAPI.config", "sUrl"); |
| | | //通过接口 获取token |
| | | JsonResult_JL jsonResult = await FindAccessToken(Url); |
| | | |
| | | string EquipFile = this.cmbEquipFile.Text; |
| | | |
| | | switch (EquipFile) |
| | | { |
| | | case "螺母全检": |
| | | SaveFullInspectionOfNuts(jsonResult.data.token, Url); |
| | | break; |
| | | case "螺母压装": |
| | | SaveNutPressFit(jsonResult.data.token, Url, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | break; |
| | | case "注塑机": |
| | | SaveInjectionMoldingMachine(jsonResult.data.token, Url, DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | break; |
| | | } |
| | | this.btnSave.Enabled = false; |
| | | } |
| | | } |
| | | |
| | | //螺母全检保存 |
| | | public async void SaveFullInspectionOfNuts(string token, string url) |
| | | { |
| | | try |
| | | { |
| | | |
| | | //获取所有设备数据 |
| | | JsonEquipmentData_JL jsonResult = await FindDeviceList(url, token); |
| | | |
| | | if (jsonResult.code != "0") |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("设备列表报错:" + jsonResult.message); |
| | | } |
| | | else |
| | | { |
| | | string nos = ""; |
| | | //获取设备编码 |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | if (jsonResult.data[i].no == this.cmbEquipFile.SelectedValue.ToString()) |
| | | { |
| | | nos = jsonResult.data[i].no; |
| | | } |
| | | } |
| | | //开始时间 |
| | | string HBegin = this.txtBegin.Text; |
| | | //结束时间 |
| | | string HEnd = this.txtEnd.Text; |
| | | //获取不良数,合数数,可疑数 总数 |
| | | jsonResult = await FindDevicePropCalc(url, token, nos, HBegin, HEnd); |
| | | if (jsonResult.code != "0") |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("数量获取报错:" + jsonResult.message); |
| | | } |
| | | else |
| | | { |
| | | double HInSpectQty = 0;//检验数量 |
| | | double HRightQty = 0;//合格 |
| | | double HUnRightQty = 0;//不合格 |
| | | double HUnKnowQty = 0;//可疑 |
| | | |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | if (jsonResult.data[i].propId == 173) |
| | | { |
| | | //HInSpectQty = jsonResult.data[i].sum; |
| | | } |
| | | else if (jsonResult.data[i].propId == 469) |
| | | { |
| | | HRightQty = jsonResult.data[i].sum; |
| | | } |
| | | else if (jsonResult.data[i].propId == 606) |
| | | { |
| | | HUnKnowQty = jsonResult.data[i].sum; |
| | | } |
| | | else if (jsonResult.data[i].propId == 470) |
| | | { |
| | | HUnRightQty = jsonResult.data[i].sum; |
| | | } |
| | | } |
| | | //通过双方讨论 最终采纳 检验数量=合格+不合格+可疑 |
| | | HInSpectQty = HRightQty + HUnKnowQty + HUnRightQty; |
| | | |
| | | |
| | | string HNumber = ""; |
| | | int HSourceID = 0; |
| | | string HSourceNumber = ""; |
| | | |
| | | switch (this.cmbEquipFile.Text) |
| | | { |
| | | case "螺母全检": |
| | | HNumber = "LMJC"; |
| | | HSourceNumber = "1030"; |
| | | break; |
| | | case "螺母压装": |
| | | HNumber = "LMYZ"; |
| | | HSourceNumber = "1029"; |
| | | break; |
| | | } |
| | | |
| | | //查询生产资源 |
| | | DataSet dsSouce = oCN.RunProcReturn("select * from Gy_Source with(nolock) where HNumber='" + HSourceNumber + "'", "Gy_Source"); |
| | | if (dsSouce.Tables[0].Rows.Count == 0) |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("生产资源查无数据!"); |
| | | } |
| | | else |
| | | { |
| | | |
| | | HSourceID = int.Parse(dsSouce.Tables[0].Rows[0]["HItemID"].ToString()); |
| | | |
| | | //查询检验方案 |
| | | DataSet dataSet = oCN.RunProcReturn(@"select a.HInterID HQCSchemeID,b.HQCCheckItemID, ch.HNumber HQCCheckItemNumber,m.HNumber,HUpLimit,HDownLimit,HTargetVal,a.HProcID,b.HInspectInstruMentID |
| | | ,b.HAnalysisMethod |
| | | from Gy_QCCheckProjectMain a with(nolock) |
| | | inner join Gy_QCCheckProjectSub b with(nolock) on a.HInterID=b.HInterID |
| | | left join Gy_Material m with(nolock) on a.HMaterID=m.HItemID |
| | | left join Gy_QCCheckItem ch with(nolock) on b.HQCCheckItemID=ch.HItemID |
| | | left join Gy_InspectInstruMent ment on b.HInspectInstruMentID=ment.HItemID |
| | | where m.HNumber='" + this.txtHMaterNumber.Text + "' and ment.HNumber='" + HNumber + "'", "Gy_QCCheckProjectMain"); |
| | | |
| | | //保存数据 |
| | | if (dataSet.Tables[0].Rows.Count > 0) |
| | | { |
| | | string sExeReturnInfo = ""; |
| | | string BillType = "7519"; |
| | | long HInterID = oCN.CreateBillID_Prod(BillType, ref sExeReturnInfo); |
| | | string HBillNo = oCN.CreateBillCode(BillType, ref sExeReturnInfo, true); |
| | | if (dataSet.Tables[0].Rows.Count <= dt.Columns.Count - 1) |
| | | { |
| | | oCN.BeginTran(); |
| | | |
| | | string HProcID = dataSet.Tables[0].Rows[0]["HProcID"].ToString(); |
| | | string HMaterID = this.HMaterID.Text; |
| | | string HQCSchemeID = dataSet.Tables[0].Rows[0]["HQCSchemeID"].ToString(); |
| | | string HBatchNo = this.txtHBathNo.Text; |
| | | int HLastResults = 1; |
| | | for (int i = 0; i < dataSet.Tables[0].Rows.Count; i++) |
| | | { |
| | | int HLastResult = 1; |
| | | string HAnalysisMethod = dataSet.Tables[0].Rows[i]["HAnalysisMethod"].ToString(); |
| | | decimal HUpLimit = 0; |
| | | decimal HDownLimit = 0; |
| | | |
| | | //分析方法 为定量分析 |
| | | if (HAnalysisMethod == "2") |
| | | { |
| | | //获取上限 |
| | | HUpLimit = decimal.Parse(dataSet.Tables[0].Rows[i]["HTargetVal"].ToString()) + decimal.Parse(dataSet.Tables[0].Rows[i]["HUpLimit"].ToString()); |
| | | //获取下限 |
| | | HDownLimit = decimal.Parse(dataSet.Tables[0].Rows[i]["HTargetVal"].ToString()) + decimal.Parse(dataSet.Tables[0].Rows[i]["HDownLimit"].ToString()); |
| | | } |
| | | |
| | | |
| | | for (int j = 0; j < dt.Columns.Count - 1; j++) |
| | | { |
| | | |
| | | string HQCCheckItemName = ""; |
| | | switch (dt.Columns[j].ColumnName) |
| | | { |
| | | case "BottomHoleDiameter": |
| | | HQCCheckItemName = "DKZJ"; |
| | | break; |
| | | case "TestingData": |
| | | HQCCheckItemName = "LYJCSJ"; |
| | | break; |
| | | case "DetectionResult": |
| | | HQCCheckItemName = "LYJCJG"; |
| | | break; |
| | | } |
| | | //SRM@101.2@VEN00005@CGDD000167@1.02.002.002@20231129@1000 |
| | | //判断检验项目的代码 跟列名是否一致 |
| | | if (dataSet.Tables[0].Rows[i]["HQCCheckItemNumber"].ToString().Contains(HQCCheckItemName)) |
| | | { |
| | | for (int k = 0; k < dt.Rows.Count; k++) |
| | | { |
| | | //只取时间范围内的数据 |
| | | if (DateTime.Parse(dt.Rows[k]["HDate"].ToString()) >= DateTime.Parse(HBegin) && DateTime.Parse(dt.Rows[k]["HDate"].ToString()) <= DateTime.Parse(HEnd)) |
| | | { |
| | | //获取检验值 |
| | | decimal HInSpectValue = decimal.Parse(dt.Rows[k][dt.Columns[j].ColumnName].ToString()); |
| | | //默认值结论为合格 |
| | | int HInSpectResult = 1; |
| | | //定量分析 进行判断是否满足上下限 |
| | | if (HAnalysisMethod == "2") |
| | | { |
| | | HInSpectResult = (HInSpectValue > HUpLimit || HDownLimit > HInSpectValue) ? 0 : 1; |
| | | } |
| | | else |
| | | { |
| | | HInSpectResult = int.Parse(HInSpectValue.ToString()); |
| | | } |
| | | |
| | | //如果当前结论为合格 并且历史结论也是合格 则继续保持合格 |
| | | if (HInSpectResult == 1 && HLastResult != 0) |
| | | { |
| | | HLastResult = 1; |
| | | } |
| | | else |
| | | { |
| | | HLastResult = 0; |
| | | } |
| | | |
| | | oCN.RunProc("Insert into QC_StockCheckBillSub_ValueGrid " + |
| | | " (HInterID,HEntryID,HSEQ" + |
| | | ",HInSpectResult,HInSpectValue,HInSpectValueB,HInSpectValueT)" + |
| | | "values(" + HInterID + "," + ((i + 1)) + "," + (k + 1) + "" + |
| | | "," + HInSpectResult + "," + dt.Rows[k][dt.Columns[j].ColumnName].ToString() + "," + dt.Rows[k][dt.Columns[j].ColumnName].ToString() + "," + dt.Rows[k][dt.Columns[j].ColumnName].ToString() + ") "); |
| | | } |
| | | } |
| | | break; |
| | | } |
| | | } |
| | | |
| | | oCN.RunProc("Insert into QC_StockCheckBillSub " + |
| | | " (HInterID,HBillNo_bak,HEntryID,HCloseMan" + |
| | | ",HEntryCloseDate,HCloseType,HRemark,HSourceInterID" + |
| | | ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" + |
| | | ",HQCCheckItemID,HQCStd,HUnit,HQCNote,HResult" + |
| | | ",HMax,HMin,HAvg,HSampleSchemeID,HSampleQty,HSampleDamageQty,HAcceptQty" + |
| | | ",HRejectQty,HSampleUnRightQty,HStatus,HUnitID,HInspectVal,HTargetVal" + |
| | | ",HUpLimit,HDownLimit,HUpOffSet,HDownOffSet,HKeyInspect,HAnalysisMethod,HInspectInstruMentID,HInspectResult" + |
| | | ") values(" |
| | | + HInterID + ",'" + HBillNo + "'," + (i + 1) + ",''" + |
| | | ",getdate(),0,'',0" + |
| | | ",0,'','',0,0" + |
| | | "," + dataSet.Tables[0].Rows[i]["HQCCheckItemID"].ToString() + ",'" + dataSet.Tables[0].Rows[i]["HTargetVal"].ToString() + "','','','" + HLastResult + "'" + |
| | | ",'" + dataSet.Tables[0].Rows[i]["HUpLimit"].ToString() + "','" + dataSet.Tables[0].Rows[i]["HDownLimit"].ToString() + "','',0,0,0,0" + |
| | | ",0,0,'',0,'','" + dataSet.Tables[0].Rows[i]["HTargetVal"].ToString() + "'" + |
| | | ",'" + dataSet.Tables[0].Rows[i]["HUpLimit"].ToString() + "','" + dataSet.Tables[0].Rows[i]["HDownLimit"].ToString() + "','','',0,'" + HAnalysisMethod + "'," + dataSet.Tables[0].Rows[i]["HInspectInstruMentID"].ToString() + ",'" + HLastResult + "'" + |
| | | ") "); |
| | | //如果当前结论为合格 并且历史结论也是合格 则继续保持合格 |
| | | if (HLastResult == 1 && HLastResults != 0) |
| | | { |
| | | HLastResults = 1; |
| | | } |
| | | else |
| | | { |
| | | HLastResults = 0; |
| | | } |
| | | } |
| | | |
| | | //主表 |
| | | oCN.RunProc("Insert Into QC_StockCheckBillMain " + |
| | | "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" + |
| | | ",HYear,HPeriod,HRemark" + |
| | | ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" + |
| | | ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" + |
| | | ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment" + |
| | | ",HProcID,HBatchNo,HInSpectQty ,HRightQty ,HUnRightQty ,HUnKnowQty " + |
| | | ") " + |
| | | " values('" + BillType + "','" + BillType + "'," + HInterID + ",'" + HBillNo + "',1,getdate(),'" + this.txtHMaker.Text + "',getdate()" + |
| | | "," + DateTime.Now.Year + "," + DateTime.Now.Month + ",''" + |
| | | "," + HSourceID + ",0,'',0,0,0" + |
| | | ",'',0," + HMaterID + ",'" + this.labHMakerID.Text + "', " + HLastResults + |
| | | ",0,0,'','',0," + HQCSchemeID + ",0,''" + |
| | | "," + HProcID + ",'" + HBatchNo + "'," + HInSpectQty + "," + HRightQty + ", " + HUnRightQty + ", " + HUnKnowQty + ") "); |
| | | |
| | | |
| | | oCN.Commit(); |
| | | MessageBox.Show("保存成功!"); |
| | | //this.btnRest.Enabled = true; |
| | | |
| | | } |
| | | else |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("当前物料的检验方案与Excel的列不匹配!"); |
| | | } |
| | | } |
| | | else |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("当前物料没有对应的检验方案!"); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | this.btnSave.Enabled = true; |
| | | MessageBox.Show("保存失败!" + e.Message); |
| | | } |
| | | } |
| | | |
| | | |
| | | //获取登录的token |
| | | public async Task<JsonResult_JL> getUrl(string url, FormUrlEncodedContent formData) |
| | | { |
| | | |
| | | // 创建 HttpClient 实例 |
| | | using (var client = new HttpClient()) |
| | | { |
| | | // 发送 POST 请求,并等待响应 |
| | | HttpResponseMessage response = await client.PostAsync(url, formData); |
| | | |
| | | Dictionary<object, object> dic = new Dictionary<object, object>(); |
| | | JsonResult_JL jsonResult = new JsonResult_JL(); |
| | | // 检查响应是否成功 |
| | | if (response.IsSuccessStatusCode) |
| | | { |
| | | // 处理成功响应的逻辑 |
| | | string responseBody = await response.Content.ReadAsStringAsync(); |
| | | jsonResult = JsonConvert.DeserializeObject<JsonResult_JL>(responseBody); |
| | | } |
| | | else |
| | | { |
| | | // 处理失败响应的逻辑 |
| | | MessageBox.Show("请求失败,状态码:" + response.StatusCode); |
| | | } |
| | | return jsonResult; |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取设备列表 |
| | | /// </summary> |
| | | /// <param name="url"></param> |
| | | /// <param name="postData"></param> |
| | | /// <returns></returns> |
| | | public async Task<JsonEquipmentData_JL> EquipmentList(string url, StringContent postData, string Type) |
| | | { |
| | | |
| | | // 创建 HttpClient 实例 |
| | | using (HttpClient client = new HttpClient()) |
| | | { |
| | | JsonEquipmentData_JL jsonResult = new JsonEquipmentData_JL(); |
| | | try |
| | | { |
| | | HttpResponseMessage response; |
| | | if (Type == "POST") |
| | | { // 发起 POST 请求 |
| | | response = await client.PostAsync(url, postData); |
| | | } |
| | | else |
| | | { |
| | | // 发起 get 请求 |
| | | response = await client.GetAsync(url); |
| | | } |
| | | |
| | | |
| | | // 确保请求成功 |
| | | if (response.IsSuccessStatusCode) |
| | | { |
| | | // 读取响应内容 |
| | | string responseBody = await response.Content.ReadAsStringAsync(); |
| | | jsonResult = JsonConvert.DeserializeObject<JsonEquipmentData_JL>(responseBody); |
| | | } |
| | | else |
| | | { |
| | | MessageBox.Show($"请求失败,: {response.StatusCode}"); |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MessageBox.Show("请求报错:" + ex.Message); |
| | | } |
| | | return jsonResult; |
| | | } |
| | | } |
| | | |
| | | public async Task<JsonResult_JL> EquipResultList(string url, StringContent postData, string Type) |
| | | { |
| | | |
| | | // 创建 HttpClient 实例 |
| | | using (HttpClient client = new HttpClient()) |
| | | { |
| | | JsonResult_JL jsonResult = new JsonResult_JL(); |
| | | try |
| | | { |
| | | HttpResponseMessage response; |
| | | if (Type == "POST") |
| | | { // 发起 POST 请求 |
| | | response = await client.PostAsync(url, postData); |
| | | } |
| | | else |
| | | { |
| | | // 发起 get 请求 |
| | | response = await client.GetAsync(url); |
| | | } |
| | | |
| | | |
| | | // 确保请求成功 |
| | | if (response.IsSuccessStatusCode) |
| | | { |
| | | // 读取响应内容 |
| | | string responseBody = await response.Content.ReadAsStringAsync(); |
| | | jsonResult = JsonConvert.DeserializeObject<JsonResult_JL>(responseBody); |
| | | } |
| | | else |
| | | { |
| | | MessageBox.Show($"请求失败,: {response.StatusCode}"); |
| | | } |
| | | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MessageBox.Show("请求报错:" + ex.Message); |
| | | } |
| | | return jsonResult; |
| | | } |
| | | } |
| | | |
| | | |
| | | //获取tockID |
| | | public async Task<JsonResult_JL> FindAccessToken(string url) |
| | | { |
| | | string urls = url + EquipmentType_JL.One; |
| | | // 准备要发送的表单数据 |
| | | var formData = new FormUrlEncodedContent(new[] |
| | | { |
| | | new KeyValuePair<string, string>("userName", "admin"), |
| | | new KeyValuePair<string, string>("password", "admin") |
| | | // 添加更多键值对,根据您的需要 |
| | | }); |
| | | JsonResult_JL jsonResult = await getUrl(urls, formData); |
| | | return jsonResult; |
| | | } |
| | | |
| | | //获取设备列表 |
| | | public async Task<JsonEquipmentData_JL> FindDeviceList(string url, string token) |
| | | { |
| | | //设备列表接口 |
| | | string urls = url + EquipmentType_JL.Two; |
| | | // 准备要发送的表单数据 |
| | | var postData = new StringContent("{\"token\":\"" + token + "\"}", System.Text.Encoding.UTF8, "application/json"); |
| | | JsonEquipmentData_JL jsonResult = await EquipmentList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | //获取良品、不良品明细、工艺参数 |
| | | public async Task<JsonEquipmentData_JL> FindAllDevicePropsDetailByTimeRange(string url, string token, string nos, string HBegin, string HEnd) |
| | | { |
| | | string basePropIds = DBHelper.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "Config/SQLAPI.config", "basePropIds"); |
| | | basePropIds = "[" + basePropIds + "]"; |
| | | nos = nos.Replace(",", "\",\""); |
| | | string stringJson = "{\"token\":\"" + token + "\",\"deviceNos\":[\"" + nos + "\"],\"startTime\":\"" + HBegin + "\",\"endTime\":\"" + HEnd + "\",\"basePropIds\":" + basePropIds + "}"; |
| | | //设备列表接口 |
| | | string urls = url + EquipmentType_JL.Nine; |
| | | CustomWriteLog("获取工艺参数接口:'" + urls + "'", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | // 准备要发送的表单数据 |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | JsonEquipmentData_JL jsonEquipment = await EquipmentList(urls, postData, "POST"); |
| | | return jsonEquipment; |
| | | } |
| | | |
| | | //获取不良数,合数数,可疑数 总数 |
| | | public async Task<JsonEquipmentData_JL> FindDevicePropCalc(string url, string token, string nos, string HBegin, string HEnd) |
| | | { |
| | | string stringJson = "{\"token\":\"" + token + "\",\"deviceNo\":\"" + nos + "\",\"propIds\":[606,173,469,470],\"beginTime\":\"" + HBegin + "\",\"endTime\":\"" + HEnd + "\"}"; |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | string urls = url + EquipmentType_JL.Seven; |
| | | JsonEquipmentData_JL jsonResult = await EquipmentList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | |
| | | //获取设备运行状态 |
| | | public async Task<JsonEquipmentData_JL> FindDeviceStatusByNos(string url, string token, string nos) |
| | | { |
| | | nos = nos.Replace(",", "\",\""); |
| | | nos = "\"" + nos + "\""; |
| | | string stringJson = "{\"token\":\"" + token + "\",\"nos\":[" + nos + "]}"; |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | string urls = url + EquipmentType_JL.Three; |
| | | JsonEquipmentData_JL jsonResult = await EquipmentList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | //获取设备时间段产量 |
| | | public async Task<JsonEquipmentData_JL> FindProdByNosAndTime(string url, string token, string nos, string HBegin, string HEnd) |
| | | { |
| | | nos = nos.Replace(",", "\",\""); |
| | | nos = "\"" + nos + "\""; |
| | | string stringJson = "{\"token\":\"" + token + "\",\"nos\":[" + nos + "],\"startTime\":\"" + HBegin + "\",\"endTime\":\"" + HEnd + "\"}"; |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | string urls = url + EquipmentType_JL.Four; |
| | | JsonEquipmentData_JL jsonResult = await EquipmentList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | //获取设备运行时间 开机 停机 待机 关机 |
| | | public async Task<JsonResult_JL> FindDeviceStatusTimeByNo(string url, string token, string nos, string HBegin, string HEnd) |
| | | { |
| | | nos = nos.Replace(",", "\",\""); |
| | | nos = "\"" + nos + "\""; |
| | | string stringJson = "{\"token\":\"" + token + "\",\"no\":" + nos + ",\"startTime\":\"" + HBegin + "\",\"endTime\":\"" + HEnd + "\"}"; |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | string urls = url + EquipmentType_JL.Five; |
| | | JsonResult_JL jsonResult = await EquipResultList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | //获取注塑机的 开机 |
| | | public async Task<JsonResult_JL> FindDeviceStatusTimeByNosAndOperationMode(string url, string token, string nos, string HBegin, string HEnd) |
| | | { |
| | | nos = nos.Replace(",", "\",\""); |
| | | nos = "\"" + nos + "\""; |
| | | string stringJson = "{\"token\":\"" + token + "\",\"no\":" + nos + ",\"startTime\":\"" + HBegin + "\",\"endTime\":\"" + HEnd + "\"}"; |
| | | var postData = new StringContent(stringJson, System.Text.Encoding.UTF8, "application/json"); |
| | | string urls = url + EquipmentType_JL.Ten; |
| | | JsonResult_JL jsonResult = await EquipResultList(urls, postData, "POST"); |
| | | return jsonResult; |
| | | } |
| | | |
| | | |
| | | //下拉框绑定数据 |
| | | private void bindCbox() |
| | | { |
| | | IList<Info_JL> infoList = new List<Info_JL>(); |
| | | Info_JL info1 = new Info_JL() { Id = "CMR-QC-SE-001", Name = "螺母全检" }; |
| | | Info_JL info2 = new Info_JL() { Id = "CMR-ZZ-SE-001", Name = "螺母压装" }; |
| | | Info_JL info3 = new Info_JL() { Id = "ZSJ07", Name = "注塑机#07" }; |
| | | //Info_JL info3 = new Info_JL() { Id = "3", Name = "王五" }; |
| | | infoList.Add(info1); |
| | | infoList.Add(info2); |
| | | infoList.Add(info3); |
| | | cmbEquipFile.DataSource = infoList; |
| | | cmbEquipFile.ValueMember = "Id"; |
| | | cmbEquipFile.DisplayMember = "Name"; |
| | | this.cmbEquipFile.SelectedIndex = 0; |
| | | this.cmbEquipFile.DropDownStyle = ComboBoxStyle.DropDownList; |
| | | } |
| | | |
| | | //选择下拉框值更改事件 |
| | | private void cmbEquipFile_SelectedIndexChanged(object sender, EventArgs e) |
| | | { |
| | | if (cmbEquipFile.SelectedIndex == 0) |
| | | { |
| | | this.btnLj.Enabled = true; |
| | | this.timer.Enabled = false; |
| | | } |
| | | else |
| | | { |
| | | this.btnLj.Enabled = false; |
| | | DialogResult dr = MessageBox.Show("是否确认开始采集?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning); |
| | | |
| | | if (dr == DialogResult.Yes) |
| | | { |
| | | this.txtHBathNo.ReadOnly = true; |
| | | this.txtBegin.Text = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); |
| | | //this.txtBegin.Text = "2024-11-21 13:40:27"; |
| | | this.btnBegin.Enabled = false; |
| | | this.timer.Enabled = true; |
| | | this.Time_CLHB.Enabled = true; |
| | | } |
| | | } |
| | | } |
| | | |
| | | //定时获取数据 |
| | | private async void timer_Tick(object sender, EventArgs e) |
| | | { |
| | | //测试全检 |
| | | //this.timer.Enabled = false; |
| | | |
| | | string Url = DBHelper.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "Config/SQLAPI.config", "sUrl"); |
| | | string urls = Url + EquipmentType_JL.One; |
| | | // 准备要发送的表单数据 |
| | | var formData = new FormUrlEncodedContent(new[] |
| | | { |
| | | new KeyValuePair<string, string>("userName", "admin"), |
| | | new KeyValuePair<string, string>("password", "Youngsunabc123..") |
| | | // 添加更多键值对,根据您的需要 |
| | | }); |
| | | JsonResult_JL jsonResult = await getUrl(urls, formData); |
| | | string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); |
| | | |
| | | if (cmbEquipFile.SelectedIndex == 1) |
| | | { |
| | | SaveNutPressFit(Url, jsonResult.data.token, time); |
| | | } |
| | | else if (cmbEquipFile.SelectedIndex == 2) |
| | | { |
| | | SaveInjectionMoldingMachine(jsonResult.data.token, Url, time); |
| | | } |
| | | |
| | | |
| | | } |
| | | |
| | | //螺母压装采集数据 保存 |
| | | public async void SaveNutPressFit(string Url, string token, string time) |
| | | { |
| | | if (TimeDate == "") |
| | | { |
| | | TimeDate = this.txtBegin.Text; |
| | | } |
| | | this.timer.Enabled = false; |
| | | |
| | | JsonEquipmentData_JL jsonResult = await FindDeviceList(Url, token); |
| | | if (jsonResult.code != "0") |
| | | { |
| | | MessageBox.Show("设备列表报错:" + jsonResult.message); |
| | | } |
| | | else |
| | | { |
| | | string nos = ""; |
| | | //获取去设备编码 |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | if (jsonResult.data[i].no.Contains("CMR-ZZ-SE-001")) |
| | | { |
| | | nos += jsonResult.data[i].no + ","; |
| | | } |
| | | } |
| | | nos = nos.Substring(0, nos.Length - 1); |
| | | //TimeDate = "2024-08-14 08:30:39"; |
| | | //time = "2024-08-14 15:05:39"; |
| | | |
| | | JsonEquipmentData_JL jsonEquipment = await FindAllDevicePropsDetailByTimeRange(Url, token, nos, TimeDate, time); |
| | | |
| | | var JsonData_JL = "{\"data\":["; |
| | | |
| | | for (int i = 0; i < jsonEquipment.data[0].props.Count; i++) |
| | | { |
| | | for (int j = 0; j < jsonEquipment.data[0].props[i].datas.Count; j++) |
| | | { |
| | | valueData_JL value = JsonConvert.DeserializeObject<valueData_JL>(jsonEquipment.data[0].props[i].datas[j].value); |
| | | if (value.type == "良品") |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + jsonEquipment.data[0].props[i].datas[j].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"OK\",\"HCount\":1,\"HSourceCode\":\"" + nos + "\"},"; |
| | | } |
| | | else |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + jsonEquipment.data[0].props[i].datas[j].createTime + "\",\"HTechParamName\":\"螺母是否凸出\",\"HResult\":\"NG\",\"HCount\":1,\"HSourceCode\":\"" + nos + "\"},"; |
| | | } |
| | | JsonData_JL += "{\"HDate\":\"" + jsonEquipment.data[0].props[i].datas[j].createTime + "\",\"HTechParamName\":\"生产周期\",\"HResult\":\"" + value.beat + "\",\"HCount\":1,\"HSourceCode\":\"" + nos + "\"},"; |
| | | } |
| | | } |
| | | |
| | | |
| | | jsonEquipment = await FindDevicePropCalc(Url, token, nos, TimeDate, time); |
| | | |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | { |
| | | //合格数 |
| | | if (jsonEquipment.data[i].propId == 469) |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"良品数\",\"HResult\":\"OK\",\"HCount\":" + jsonEquipment.data[i].sum + ",\"HSourceCode\":\"" + nos + "\"},"; |
| | | } |
| | | //不良数 |
| | | else if (jsonEquipment.data[i].propId == 470) |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"NG数量\",\"HResult\":\"NG\",\"HCount\":" + jsonEquipment.data[i].sum + ",\"HSourceCode\":\"" + nos + "\"},"; |
| | | } |
| | | } |
| | | |
| | | JsonData_JL = JsonData_JL.Substring(0, JsonData_JL.Length - 1); |
| | | JsonData_JL += "]}"; |
| | | DataSave(JsonData_JL); |
| | | if (TimeDate != "") |
| | | { |
| | | TimeDate = time; |
| | | } |
| | | } |
| | | } |
| | | |
| | | //注塑机采集数据 保存 |
| | | public async void SaveInjectionMoldingMachine(string token, string Url, string time) |
| | | { |
| | | ListData.Items.Clear(); |
| | | if (TimeDate == "") |
| | | { |
| | | TimeDate = this.txtBegin.Text; |
| | | } |
| | | //this.timer.Enabled = false; |
| | | |
| | | //TimeDate = "2025-02-10 13:10:50"; |
| | | //time = "2025-02-10 13:11:50"; |
| | | |
| | | //获取所有设备数据 |
| | | JsonEquipmentData_JL jsonResult = await FindDeviceList(Url, token); |
| | | if (jsonResult.code != "0") |
| | | { |
| | | MessageBox.Show("设备列表报错:" + jsonResult.message); |
| | | } |
| | | else |
| | | { |
| | | |
| | | string nos = ""; |
| | | //获取设备编码 |
| | | for (int i = 0; i < jsonResult.data.Count; i++) |
| | | { |
| | | nos += jsonResult.data[i].no + ","; |
| | | //if (jsonResult.data[i].no.Contains("JS_ZS")) |
| | | //{ |
| | | // nos += jsonResult.data[i].no + ","; |
| | | //} |
| | | } |
| | | nos = nos.Substring(0, nos.Length - 1); |
| | | //获取参数 获取每个设备对应的所有参数 |
| | | JsonEquipmentData_JL jsonEquipment = await FindAllDevicePropsDetailByTimeRange(Url, token, nos, TimeDate, time); |
| | | |
| | | if (jsonEquipment == null) |
| | | { |
| | | CustomWriteLog("jsonEquipment对象为空", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | |
| | | if (jsonEquipment.data == null) |
| | | { |
| | | CustomWriteLog("data属性为空", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | |
| | | var JsonData_JL = "{\"data\":["; |
| | | CustomWriteLog("开始循环工艺参数总数为::'" + jsonEquipment.data.Count + "'", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //通过每个设备进行循环赋值 |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | { |
| | | //循环 螺母压装设备对应的所有工艺参数 |
| | | for (int j = 0; j < jsonEquipment.data[i].props.Count; j++) |
| | | { |
| | | //循环 每个参数对应的所有数据 |
| | | for (int k = 0; k < jsonEquipment.data[i].props[j].datas.Count; k++) |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\"" + jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | CustomWriteLog("工艺参数具体值:{\"HDate\":\"" + jsonEquipment.data[i].props[j].datas[k].createTime + "\",\"HTechParamName\":\"" + jsonEquipment.data[i].props[j].propName + "\",\"HResult\":\"" + jsonEquipment.data[i].props[j].datas[k].value + "\",\"HCount\":1,\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"}", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | } |
| | | } |
| | | |
| | | //获取设备时间段产量 |
| | | JsonEquipmentData_JL data = await FindProdByNosAndTime(Url, token, jsonEquipment.data[i].deviceNo, TimeDate, time); |
| | | for (int j = 0; j < data.data.Count; j++) |
| | | { |
| | | |
| | | JsonData_JL += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"生产数量\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].prod + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"},"; |
| | | CustomWriteLog("{\"HDate\":\"" + time + "\",\"HTechParamName\":\"生产数量\",\"HResult\":\"OK\",\"HCount\":" + data.data[j].prod + ",\"HSourceCode\":\"" + jsonEquipment.data[i].deviceNo + "\"}", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | } |
| | | } |
| | | |
| | | CustomWriteLog("02", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //获取设备运行状态 |
| | | var EquipmentStaus = await FindDeviceStatusByNos(Url, token, nos); |
| | | |
| | | for (int i = 0; i < EquipmentStaus.data.Count; i++) |
| | | { |
| | | //卷绕 注塑 浸渍 组装 的设备运行 开关停机时间 |
| | | if (EquipmentStaus.data[i].no.Contains("JS_RX_") || EquipmentStaus.data[i].no.Contains("JS_HX_") || EquipmentStaus.data[i].no.Contains("JS_LS_") |
| | | || EquipmentStaus.data[i].no.Contains("JS_YL_") || EquipmentStaus.data[i].no.Contains("JS_M2_") || EquipmentStaus.data[i].no.Contains("JS_ZS_")) |
| | | { |
| | | string HBegDate = DateTime.Now.ToString("yyyy-MM-dd 00:00:00"); |
| | | string HEndDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:00"); |
| | | |
| | | if (DateTime.Parse(HEndDate).AddMinutes(1).ToString("yyyy-MM-dd") != DateTime.Parse(HEndDate).ToString("yyyy-MM-dd")) |
| | | { |
| | | HEndDate = DateTime.Parse(HEndDate).AddMinutes(1).ToString("yyyy-MM-dd HH:mm:00"); |
| | | } |
| | | |
| | | JsonResult_JL HEqDate = await FindDeviceStatusTimeByNo(Url, token, EquipmentStaus.data[i].no, HBegDate, HEndDate); |
| | | |
| | | // 记录开机时长 |
| | | CustomWriteLog("设备开机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"开机时长\",\"HResult\":\"" + ((float)(HEqDate.data.onlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录关机时长 |
| | | CustomWriteLog("设备关机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"关机时长\",\"HResult\":\"" + ((float)(HEqDate.data.offlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录停机时长 |
| | | CustomWriteLog("设备停机时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"停机时长\",\"HResult\":\"" + ((float)(HEqDate.data.standbyTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | // 记录运行时长 |
| | | CustomWriteLog("设备运行时长: {\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"运行时长\",\"HResult\":\"" + ((float)(HEqDate.data.runTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"}", |
| | | DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")); |
| | | |
| | | JsonData_JL += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"开机时长\",\"HResult\":\"" + ((float)(HEqDate.data.onlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | JsonData_JL += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"关机时长\",\"HResult\":\"" + ((float)(HEqDate.data.offlineTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | JsonData_JL += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"停机时长\",\"HResult\":\"" + ((float)(HEqDate.data.standbyTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | JsonData_JL += "{\"HDate\":\"" + HEndDate + "\",\"HTechParamName\":\"运行时长\",\"HResult\":\"" + ((float)(HEqDate.data.runTime / 60 / 60)).ToString("0.00") + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | } |
| | | |
| | | |
| | | string staus = ""; |
| | | switch (EquipmentStaus.data[i].status) |
| | | { |
| | | //-1:未知,1:离线,2:待机,3:正常运行,4:告警 |
| | | case "-1": |
| | | staus = "未知"; |
| | | break; |
| | | case "1": |
| | | staus = "离线"; |
| | | break; |
| | | case "2": |
| | | staus = "待机"; |
| | | break; |
| | | case "3": |
| | | staus = "正常运行"; |
| | | break; |
| | | case "4": |
| | | staus = "告警"; |
| | | break; |
| | | } |
| | | if (jsonEquipment.data.Count > 0) |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"开关机状态\",\"HResult\":\"" + staus + "\",\"HCount\":1,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | } |
| | | else |
| | | { |
| | | JsonData_JL += "{\"HDate\":\"" + time + "\",\"HTechParamName\":\"开关机状态\",\"HResult\":\"" + staus + "\",\"HCount\":0,\"HSourceCode\":\"" + EquipmentStaus.data[i].no + "\"},"; |
| | | } |
| | | } |
| | | |
| | | //查询当前开工的设备 获取对应的物料信息 |
| | | DataSet datable = oCN.RunProcReturn(@"select m.HNumber,eq.HEquipFileNo from Sc_ICMOBillStatus_Tmp a |
| | | inner join Gy_EquipFileBillMain eq on a.HSourceID = eq.HSourceID |
| | | inner join Gy_Material m on a.HMaterID = m.HItemID |
| | | where a.HICMOStatus = '1' ", "Sc_ICMOBillStatus_Tmp"); |
| | | |
| | | if (datable.Tables[0].Rows.Count > 0) |
| | | { |
| | | for (int i = 0; i < datable.Tables[0].Rows.Count; i++) |
| | | { |
| | | string HSourceCode = datable.Tables[0].Rows[i]["HEquipFileNo"].ToString(); |
| | | string HNumber = datable.Tables[0].Rows[i]["HNumber"].ToString(); |
| | | |
| | | JsonData_JL += "{\"HDate\":\"" + DateTime.Now.ToString() + "\",\"HTechParamName\":\"物料代码\",\"HResult\":\"" + HNumber + "\",\"HCount\":1,\"HSourceCode\":\"" + HSourceCode + "\"},"; |
| | | } |
| | | } |
| | | |
| | | CustomWriteLog("03", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | JsonData_JL = JsonData_JL.Substring(0, JsonData_JL.Length - 1); |
| | | JsonData_JL += "]}"; |
| | | |
| | | CustomWriteLog("结束所有", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //保存数据 |
| | | DataSave(JsonData_JL); |
| | | if (TimeDate != "") |
| | | { |
| | | TimeDate = time; |
| | | } |
| | | } |
| | | } |
| | | |
| | | //数据保存 |
| | | public void DataSave(string JsonData_JL) |
| | | { |
| | | JsonEquipmentData_JL data = JsonConvert.DeserializeObject<JsonEquipmentData_JL>(JsonData_JL); |
| | | |
| | | for (int i = 0; i < data.data.Count; i++) |
| | | { |
| | | oCN.RunProc(@"insert into Sb_EquipMentCollectionTechParam_Temp(HDate,HSourceCode,HTechParamID,HTechParamName,HCount |
| | | ,HCreateTime,HResult,HProcNumber,HFlag) |
| | | values(getdate(),'" + data.data[i].HSourceCode + "',0,'" + data.data[i].HTechParamName + "'," + data.data[i].HCount |
| | | + ",'" + data.data[i].HDate + "','" + data.data[i].HResult + "','" + data.data[i].HProcNumber + "',0)"); |
| | | |
| | | } |
| | | ListData.Items.Add($"时间: {DateTime.Now:yyyy-MM-dd HH:mm:ss},加载成功"); |
| | | } |
| | | |
| | | //定时生成产量汇报单 |
| | | private async void Time_CLHB_Tick(object sender, EventArgs e) |
| | | { |
| | | //this.Time_CLHB.Enabled = false; |
| | | string Url = DBHelper.GetConfigKey(AppDomain.CurrentDomain.BaseDirectory + "Config/SQLAPI.config", "sUrl"); |
| | | string urls = Url + EquipmentType_JL.One; |
| | | // 准备要发送的表单数据 |
| | | var formData = new FormUrlEncodedContent(new[] |
| | | { |
| | | new KeyValuePair<string, string>("userName", "admin"), |
| | | new KeyValuePair<string, string>("password", "Youngsunabc123..") |
| | | // 添加更多键值对,根据您的需要 |
| | | }); |
| | | JsonResult_JL jsonResult = await getUrl(urls, formData); |
| | | string time = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | string token = jsonResult.data.token; |
| | | |
| | | //获取所有的设备数据 |
| | | JsonEquipmentData_JL jsonEquipment = await FindDeviceList(Url, token); |
| | | |
| | | if (jsonEquipment.code != "0") |
| | | { |
| | | MessageBox.Show("设备列表报错:" + jsonEquipment.message); |
| | | } |
| | | else |
| | | { |
| | | string nos = ""; |
| | | //获取去设备编码 |
| | | for (int i = 0; i < jsonEquipment.data.Count; i++) |
| | | { |
| | | nos += "''" + jsonEquipment.data[i].no + "'',"; |
| | | //if (jsonEquipment.data[i].no.Contains("JS_ZS")) |
| | | //{ |
| | | // nos += "''" + jsonEquipment.data[i].no + "'',"; |
| | | //} |
| | | } |
| | | nos = nos.Substring(0, nos.Length - 1); |
| | | |
| | | //this.Time_CLHB.Enabled = false; |
| | | |
| | | CustomWriteLog("产量汇报单,设备编码:'"+ nos + "'", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | |
| | | //查询开工的设备信息 以及 查询当天设备对应的开工时间 和完工时间 |
| | | DataSet ds = oCN.RunProcReturn("exec h_p_Sc_TimeICMOReporList '" + nos + "'", "h_p_Sc_TimeICMOReporList"); |
| | | |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | //根据当天只开工没有完工对应的产量数据 生成产量汇报单 |
| | | DataTable dt = ds.Tables[0]; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | | nos = dt.Rows[i]["设备编码"].ToString(); |
| | | string HICMInterID = dt.Rows[i]["HInterID"].ToString(); |
| | | string HBegDate = DateTime.Parse(dt.Rows[i]["日期"].ToString()).ToString("yyyy-MM-dd HH:mm:ss"); |
| | | string HEndDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); |
| | | jsonEquipment = await FindProdByNosAndTime(Url, token, nos, HBegDate, HEndDate); |
| | | if (decimal.Parse(jsonEquipment.data[0].prod) > 0) |
| | | { |
| | | //生成产量汇报单 |
| | | oCN.RunProc("exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod + ",'" + HEndDate + "'"); |
| | | CustomWriteLog("生成产量汇报单1:'exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod + ",'" + HEndDate + "''", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | } |
| | | } |
| | | } |
| | | if (ds.Tables[1].Rows.Count > 0) |
| | | { |
| | | //根据当天开工并且完工对应的产量数据 生成产量汇报单 |
| | | DataTable dt = ds.Tables[1]; |
| | | for (int i = 0; i < dt.Rows.Count; i++) |
| | | { |
| | | nos = dt.Rows[i]["设备编码"].ToString(); |
| | | string HICMInterID = dt.Rows[i]["HInterID"].ToString(); |
| | | string HBegDate = DateTime.Parse(dt.Rows[i]["开始日期"].ToString()).ToString("yyyy-MM-dd HH:mm:ss"); |
| | | string HEndDate = DateTime.Parse(dt.Rows[i]["结束日期"].ToString()).ToString("yyyy-MM-dd HH:mm:ss"); |
| | | jsonEquipment = await FindProdByNosAndTime(Url, token, nos, HBegDate, HEndDate); |
| | | if (decimal.Parse(jsonEquipment.data[0].prod) > 0) |
| | | { |
| | | //生成产量汇报单 |
| | | oCN.RunProc("exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod + ",'" + HEndDate + "'"); |
| | | CustomWriteLog("生成产量汇报单2:'exec h_p_Sc_AddTimeICMORepor " + HICMInterID + "," + jsonEquipment.data[0].prod + ",'" + HEndDate + "''", DateTime.Now.ToString("yyyy-MM-dd")); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | private void EquipmentCollectionForm_FormClosing(object sender, FormClosingEventArgs e) |
| | | { |
| | | if (MessageBox.Show("确定要关闭吗?", "确认", MessageBoxButtons.YesNo) == DialogResult.No) |
| | | { |
| | | e.Cancel = true; |
| | | } |
| | | } |
| | | |
| | | private void txtHMaker_Leave(object sender, EventArgs e) |
| | | { |
| | | if (string.IsNullOrWhiteSpace(txtHMaker.Text)) |
| | | { |
| | | this.txtHMaker.ForeColor = Color.LightGray; |
| | | txtHMaker.Text = "请输入用户编码!"; |
| | | } |
| | | } |
| | | |
| | | private void txtHMaker_Enter(object sender, EventArgs e) |
| | | { |
| | | if (txtHMaker.Text.Trim() == "请输入用户编码!") |
| | | { |
| | | txtHMaker.Text = ""; |
| | | this.txtHMaker.ForeColor = Color.Black; |
| | | } |
| | | } |
| | | |
| | | private void txtHMaker_KeyDown(object sender, KeyEventArgs e) |
| | | { |
| | | if (e.KeyCode == Keys.Enter) |
| | | { |
| | | SelectHMaker(this.txtHMaker.Text); |
| | | } |
| | | } |
| | | |
| | | |
| | | //查询职员信息 |
| | | public void SelectHMaker(string txtHMaker) |
| | | { |
| | | try |
| | | { |
| | | DataSet ds = oCN.RunProcReturn("select HItemID,HName,HNumber from Gy_Employee where HNumber='" + txtHMaker + "' or HName ='" + txtHMaker + "'", "Gy_Employee"); |
| | | if (ds.Tables[0].Rows.Count > 0) |
| | | { |
| | | string HName = ds.Tables[0].Rows[0]["HName"].ToString(); |
| | | string HMakerID = ds.Tables[0].Rows[0]["HItemID"].ToString(); |
| | | string HNumber = ds.Tables[0].Rows[0]["HNumber"].ToString(); |
| | | this.txtHMaker.Text = HName; |
| | | this.txtHMakerNumber.Text = HNumber; |
| | | this.labHMakerID.Text = HMakerID; |
| | | this.txtHMaker.ReadOnly = true; |
| | | } |
| | | else |
| | | { |
| | | MessageBox.Show(this, "编码:" + txtHMaker + ",查无数据,可能是输入编码有误!", "提示"); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | MessageBox.Show(this, e.Message, "提示"); |
| | | } |
| | | } |
| | | |
| | | private void EquipmentCollectionForm_Activated(object sender, EventArgs e) |
| | | { |
| | | //光标选中制单人 |
| | | this.txtHMaker.Focus(); |
| | | } |
| | | |
| | | private static readonly object lockObj = new object(); |
| | | //写日志 |
| | | public static void CustomWriteLog(object obj, string FileName, string filePath = "Vlog", bool isAppend = true) |
| | | { |
| | | try |
| | | { |
| | | lock (lockObj) |
| | | { |
| | | filePath = $@"{filePath}\{FileName}.txt"; |
| | | |
| | | filePath = AppDomain.CurrentDomain.BaseDirectory + filePath; |
| | | |
| | | if (!System.IO.Directory.Exists(Path.GetDirectoryName(filePath))) |
| | | { |
| | | System.IO.Directory.CreateDirectory(Path.GetDirectoryName(filePath)); |
| | | } |
| | | |
| | | bool fileExists = System.IO.File.Exists(filePath); |
| | | //不存在 则创建该文件 |
| | | if (!fileExists) |
| | | { |
| | | System.IO.File.Create(filePath).Close(); |
| | | } |
| | | |
| | | using (StreamWriter writer = new StreamWriter(filePath, isAppend)) |
| | | { |
| | | //存在的时候才写一行 |
| | | if (fileExists && isAppend) |
| | | { |
| | | writer.WriteLine(); |
| | | } |
| | | |
| | | var content = obj is string ? obj : JsonConvert.SerializeObject(obj); |
| | | writer.WriteLine($"{DateTime.Now} {content}"); |
| | | } |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | public class JsonResult_JL |
| | | { |
| | | public string code { get; set; } |
| | | public string message { get; set; } |
| | | public string expirationTime { get; set; } |
| | | public string token { get; set; } |
| | | public JsonData_JL data { get; set; } |
| | | } |
| | | |
| | | public class JsonEquipmentData_JL |
| | | { |
| | | public string code { get; set; } |
| | | public string message { get; set; } |
| | | public string expirationTime { get; set; } |
| | | public string token { get; set; } |
| | | public string deviceNo { get; set; } |
| | | public string deviceName { get; set; } |
| | | public string deviceStatus { get; set; } |
| | | public List<JsonData_JL> data { get; set; } |
| | | } |
| | | |
| | | public class JsonData_JL |
| | | { |
| | | public double onlineTime { get; set; } |
| | | public double offlineTime { get; set; } |
| | | public double standbyTime { get; set; } |
| | | public double runTime { get; set; } |
| | | public string expirationTime { get; set; } |
| | | public string token { get; set; } |
| | | public string deviceNo { get; set; } |
| | | public List<propsData_JL> props { get; set; } |
| | | public string area { get; set; } |
| | | public string no { get; set; } |
| | | public string name { get; set; } |
| | | public string status { get; set; } |
| | | public string prod { get; set; } |
| | | public string propName { get; set; } |
| | | public string basePropId { get; set; } |
| | | public string value { get; set; } |
| | | public string time { get; set; } |
| | | public int propId { get; set; } |
| | | public double count { get; set; } |
| | | public double min { get; set; } |
| | | public double max { get; set; } |
| | | public double avg { get; set; } |
| | | public double sum { get; set; } |
| | | public string createTime { get; set; } |
| | | public string happenTime { get; set; } |
| | | public string HDate { get; set; } |
| | | public string HTechParamName { get; set; } |
| | | public string HResult { get; set; } |
| | | public string HCount { get; set; } |
| | | public string HSourceCode { get; set; } |
| | | public string HProcNumber { get; set; } |
| | | } |
| | | |
| | | public class propsData_JL |
| | | { |
| | | public string propName { get; set; } |
| | | public List<JsonData_JL> datas { get; set; } |
| | | public string basePropId { get; set; } |
| | | } |
| | | |
| | | public class valueData_JL |
| | | { |
| | | public string beat { get; set; } |
| | | public string type { get; set; } |
| | | } |
| | | |
| | | //设备接口 |
| | | public static class EquipmentType_JL |
| | | { |
| | | //设备 获取令牌 |
| | | public static string One = "/api/third/findAccessToken"; |
| | | //设备列表 |
| | | public static string Two = "/api/third/findDeviceList"; |
| | | //设备状态 |
| | | public static string Three = "/api/third/findDeviceStatusByNos"; |
| | | //设备产量 |
| | | public static string Four = "/api/third/findProdByNosAndTime"; |
| | | //设备时长 |
| | | public static string Five = "/api/third/findDeviceStatusTimeByNo"; |
| | | //属性列表 |
| | | public static string Six = "/api/third/findPropertyListByNos"; |
| | | //产量,不良数,合格数,可疑数 总数 |
| | | public static string Seven = "/api/third/findDevicePropCalc"; |
| | | //一段时间内设备状态的获取 |
| | | public static string Eight = "/api/third/dayDeviceStatusTimeline"; |
| | | //良品 不良品 明细 注塑机数据 |
| | | public static string Nine = "/api/third/findAllDevicePropsDetailByTimeRange"; |
| | | //注塑机开机时长 根据 操作模式采集 |
| | | public static string Ten = "/api/third/findDeviceStatusTimeByNosAndOperationMode"; |
| | | //public static string Eleven = "Monday"; |
| | | //public static string Twelve = "Monday"; |
| | | } |
| | | |
| | | public class Info_JL |
| | | { |
| | | public string Id { get; set; } |
| | | public string Name { get; set; } |
| | | } |
| | | |
| | | } |
New file |
| | |
| | | <?xml version="1.0" encoding="utf-8"?> |
| | | <root> |
| | | <!-- |
| | | Microsoft ResX Schema |
| | | |
| | | Version 2.0 |
| | | |
| | | The primary goals of this format is to allow a simple XML format |
| | | that is mostly human readable. The generation and parsing of the |
| | | various data types are done through the TypeConverter classes |
| | | associated with the data types. |
| | | |
| | | Example: |
| | | |
| | | ... ado.net/XML headers & schema ... |
| | | <resheader name="resmimetype">text/microsoft-resx</resheader> |
| | | <resheader name="version">2.0</resheader> |
| | | <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader> |
| | | <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader> |
| | | <data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data> |
| | | <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data> |
| | | <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64"> |
| | | <value>[base64 mime encoded serialized .NET Framework object]</value> |
| | | </data> |
| | | <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> |
| | | <value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value> |
| | | <comment>This is a comment</comment> |
| | | </data> |
| | | |
| | | There are any number of "resheader" rows that contain simple |
| | | name/value pairs. |
| | | |
| | | Each data row contains a name, and value. The row also contains a |
| | | type or mimetype. Type corresponds to a .NET class that support |
| | | text/value conversion through the TypeConverter architecture. |
| | | Classes that don't support this are serialized and stored with the |
| | | mimetype set. |
| | | |
| | | The mimetype is used for serialized objects, and tells the |
| | | ResXResourceReader how to depersist the object. This is currently not |
| | | extensible. For a given mimetype the value must be set accordingly: |
| | | |
| | | Note - application/x-microsoft.net.object.binary.base64 is the format |
| | | that the ResXResourceWriter will generate, however the reader can |
| | | read any of the formats listed below. |
| | | |
| | | mimetype: application/x-microsoft.net.object.binary.base64 |
| | | value : The object must be serialized with |
| | | : System.Runtime.Serialization.Formatters.Binary.BinaryFormatter |
| | | : and then encoded with base64 encoding. |
| | | |
| | | mimetype: application/x-microsoft.net.object.soap.base64 |
| | | value : The object must be serialized with |
| | | : System.Runtime.Serialization.Formatters.Soap.SoapFormatter |
| | | : and then encoded with base64 encoding. |
| | | |
| | | mimetype: application/x-microsoft.net.object.bytearray.base64 |
| | | value : The object must be serialized into a byte array |
| | | : using a System.ComponentModel.TypeConverter |
| | | : and then encoded with base64 encoding. |
| | | --> |
| | | <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> |
| | | <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> |
| | | <xsd:element name="root" msdata:IsDataSet="true"> |
| | | <xsd:complexType> |
| | | <xsd:choice maxOccurs="unbounded"> |
| | | <xsd:element name="metadata"> |
| | | <xsd:complexType> |
| | | <xsd:sequence> |
| | | <xsd:element name="value" type="xsd:string" minOccurs="0" /> |
| | | </xsd:sequence> |
| | | <xsd:attribute name="name" use="required" type="xsd:string" /> |
| | | <xsd:attribute name="type" type="xsd:string" /> |
| | | <xsd:attribute name="mimetype" type="xsd:string" /> |
| | | <xsd:attribute ref="xml:space" /> |
| | | </xsd:complexType> |
| | | </xsd:element> |
| | | <xsd:element name="assembly"> |
| | | <xsd:complexType> |
| | | <xsd:attribute name="alias" type="xsd:string" /> |
| | | <xsd:attribute name="name" type="xsd:string" /> |
| | | </xsd:complexType> |
| | | </xsd:element> |
| | | <xsd:element name="data"> |
| | | <xsd:complexType> |
| | | <xsd:sequence> |
| | | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
| | | <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> |
| | | </xsd:sequence> |
| | | <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> |
| | | <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> |
| | | <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> |
| | | <xsd:attribute ref="xml:space" /> |
| | | </xsd:complexType> |
| | | </xsd:element> |
| | | <xsd:element name="resheader"> |
| | | <xsd:complexType> |
| | | <xsd:sequence> |
| | | <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> |
| | | </xsd:sequence> |
| | | <xsd:attribute name="name" type="xsd:string" use="required" /> |
| | | </xsd:complexType> |
| | | </xsd:element> |
| | | </xsd:choice> |
| | | </xsd:complexType> |
| | | </xsd:element> |
| | | </xsd:schema> |
| | | <resheader name="resmimetype"> |
| | | <value>text/microsoft-resx</value> |
| | | </resheader> |
| | | <resheader name="version"> |
| | | <value>2.0</value> |
| | | </resheader> |
| | | <resheader name="reader"> |
| | | <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
| | | </resheader> |
| | | <resheader name="writer"> |
| | | <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> |
| | | </resheader> |
| | | <metadata name="timer.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> |
| | | <value>17, 17</value> |
| | | </metadata> |
| | | <metadata name="Time_CLHB.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> |
| | | <value>125, 17</value> |
| | | </metadata> |
| | | </root> |
| | |
| | | { |
| | | Application.EnableVisualStyles(); |
| | | Application.SetCompatibleTextRenderingDefault(false); |
| | | Application.Run(new EquipmentCollectionForm()); |
| | | //Application.Run(new EquipmentCollectionForm());//斯莫尔 |
| | | Application.Run(new EquipmentCollectionForm_JiuLing());//九菱 |
| | | } |
| | | } |
| | | } |
| | |
| | | <configuration> |
| | | <appSettings> |
| | | <!--斯莫尔--> |
| | | <add key="sServer" value="30.10.7.6"></add> |
| | | <!--<add key="sServer" value="30.10.7.6"></add> |
| | | <add key="sDataBase" value="HX_LMESsys_test"></add> |
| | | <add key="sUser" value="HX_USER"></add> |
| | | <add key="sPassword" value="lc@841022"></add> |
| | | <add key="basePropIds" value="173,279,473,474,489,508,513, 562, 563, 564, 565, 566, 567, 568, 569, 570,571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,593, 594, 595, 597, 600, 601, 602, 603, 604, 605,609,608,610,611,612,613,614,615,616,617,618,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,643,645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679"></add> |
| | | <add key="basePropIds" value="173,279,473,474,489,508,513, 562, 563, 564, 565, 566, 567, 568, 569, 570,571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586,593, 594, 595, 597, 600, 601, 602, 603, 604, 605,609,608,610,611,612,613,614,615,616,617,618,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,643,645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679"></add>--> |
| | | <!--内部测试--> |
| | | <!--<add key="sUrl" value="https://30.10.7.6:8066"></add>--> |
| | | <!--斯莫尔外网测试--> |
| | | <add key="sUrl" value="https://hzsme.nps.iiot.youngsunnb.com/"></add> |
| | | <!--<add key="sUrl" value="https://hzsme.nps.iiot.youngsunnb.com/"></add>--> |
| | | <!--47--> |
| | | <!--<add key="sServer" value="47.96.97.237,15127"></add> |
| | | <add key="sDataBase" value="HX_LMESsys"></add> |
| | | <add key="sUser" value="HX_USER"></add> |
| | | <add key="sPassword" value="lc@841022"></add>--> |
| | | <!--九菱--> |
| | | <add key="sServer" value="192.168.2.10"></add> |
| | | <add key="sDataBase" value="HX_LMESsys"></add> |
| | | <add key="sUser" value="HX_USER"></add> |
| | | <add key="sPassword" value="lc@841022"></add> |
| | | <add key="sUrl" value="http://192.168.2.200:8080/"></add> |
| | | <add key="basePropIds" value="174,175,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,349,427,527,528,423,529,530,531, |
| | | 532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,347,346,554,555,556,557,558,559,560,561, |
| | | 562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593, |
| | | 594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625, |
| | | 626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657, |
| | | 658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689, |
| | | 690,691,692,693,694,695,696,697,370,372,371,439,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,173, |
| | | 272,717,718,719,720,721,722,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754, |
| | | 755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786, |
| | | 787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818, |
| | | 819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850, |
| | | 851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882, |
| | | 883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,289,295,909,287,292,291, |
| | | 275,910,288,911,912,430,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934"></add> |
| | | </appSettings> |
| | | </configuration> |
New file |
| | |
| | | 2025/6/11 12:49:06 01 |
| | | |
| | | 2025/6/11 12:52:18 01 |
| | | |
| | | 2025/6/11 12:52:24 01 |
| | | |
| | | 2025/6/11 13:45:26 01 |
| | | |
| | | 2025/6/11 13:45:33 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:45:33 {"HDate":"2025-06-11 13:45:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:45:34 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:45:34 {"HDate":"2025-06-11 13:45:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:45:34 02 |
| | | |
| | | 2025/6/11 13:47:27 01 |
| | | |
| | | 2025/6/11 13:47:27 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:47:27 {"HDate":"2025-06-11 13:47:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:47:27 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:47:27 {"HDate":"2025-06-11 13:47:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:47:27 02 |
| | | |
| | | 2025/6/11 13:47:28 03 |
| | | |
| | | 2025/6/11 13:48:23 01 |
| | | |
| | | 2025/6/11 13:48:23 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:48:23 {"HDate":"2025-06-11 13:48:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:48:23 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:48:23 {"HDate":"2025-06-11 13:48:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:48:23 02 |
| | | |
| | | 2025/6/11 13:48:23 03 |
| | | |
| | | 2025/6/11 13:55:42 01 |
| | | |
| | | 2025/6/11 13:55:42 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:55:42 {"HDate":"2025-06-11 13:55:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:55:42 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:55:42 {"HDate":"2025-06-11 13:55:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:55:42 02 |
| | | |
| | | 2025/6/11 13:55:43 03 |
| | | |
| | | 2025/6/11 13:56:42 01 |
| | | |
| | | 2025/6/11 13:56:42 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:56:42 {"HDate":"2025-06-11 13:56:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:56:42 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:56:42 {"HDate":"2025-06-11 13:56:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:56:42 02 |
| | | |
| | | 2025/6/11 13:56:42 03 |
| | | |
| | | 2025/6/11 13:58:03 01 |
| | | |
| | | 2025/6/11 13:58:03 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:58:03 {"HDate":"2025-06-11 13:58:00","HTechParamName":"生产数量","HResult":"OK","HCount":8,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 13:58:03 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 13:58:03 {"HDate":"2025-06-11 13:58:00","HTechParamName":"生产数量","HResult":"OK","HCount":8,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 13:58:03 02 |
| | | |
| | | 2025/6/11 13:58:04 03 |
| | | |
| | | 2025/6/11 13:58:42 01 |
| | | |
| | | 2025/6/11 14:02:24 01 |
| | | |
| | | 2025/6/11 14:02:24 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:02:24 {"HDate":"2025-06-11 14:02:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:02:24 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:02:24 {"HDate":"2025-06-11 14:02:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:02:24 02 |
| | | |
| | | 2025/6/11 14:02:25 03 |
| | | |
| | | 2025/6/11 14:03:23 01 |
| | | |
| | | 2025/6/11 14:03:24 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:03:24 {"HDate":"2025-06-11 14:03:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:03:24 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:03:24 {"HDate":"2025-06-11 14:03:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:03:24 02 |
| | | |
| | | 2025/6/11 14:03:24 03 |
| | | |
| | | 2025/6/11 14:08:50 01 |
| | | |
| | | 2025/6/11 14:08:50 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:08:50 {"HDate":"2025-06-11 14:08:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:08:50 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:08:50 {"HDate":"2025-06-11 14:08:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:08:50 02 |
| | | |
| | | 2025/6/11 14:08:50 03 |
| | | |
| | | 2025/6/11 14:32:38 01 |
| | | |
| | | 2025/6/11 14:32:38 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:32:38 {"HDate":"2025-06-11 14:32:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:32:38 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:32:38 {"HDate":"2025-06-11 14:32:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:32:38 02 |
| | | |
| | | 2025/6/11 14:32:38 03 |
| | | |
| | | 2025/6/11 14:33:10 01 |
| | | |
| | | 2025/6/11 14:33:10 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:33:10 {"HDate":"2025-06-11 14:33:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:33:10 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:33:10 {"HDate":"2025-06-11 14:33:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:33:10 02 |
| | | |
| | | 2025/6/11 14:33:10 03 |
| | | |
| | | 2025/6/11 14:43:46 01 |
| | | |
| | | 2025/6/11 14:43:52 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:43:53 {"HDate":"2025-06-11 14:42:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:43:57 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:43:57 {"HDate":"2025-06-11 14:42:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:43:57 02 |
| | | |
| | | 2025/6/11 14:43:57 03 |
| | | |
| | | 2025/6/11 14:47:44 01 |
| | | |
| | | 2025/6/11 14:47:44 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:47:44 {"HDate":"2025-06-11 14:46:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:47:44 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:47:44 {"HDate":"2025-06-11 14:46:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:47:44 02 |
| | | |
| | | 2025/6/11 14:47:44 03 |
| | | |
| | | 2025/6/11 14:48:01 01 |
| | | |
| | | 2025/6/11 14:48:01 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:48:01 {"HDate":"2025-06-11 14:47:00","HTechParamName":"生产数量","HResult":"OK","HCount":5,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:48:02 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:48:02 {"HDate":"2025-06-11 14:47:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:48:02 02 |
| | | |
| | | 2025/6/11 14:48:02 03 |
| | | |
| | | 2025/6/11 14:48:48 01 |
| | | |
| | | 2025/6/11 14:48:48 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:48:48 {"HDate":"2025-06-11 14:48:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:48:48 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:48:48 {"HDate":"2025-06-11 14:48:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:48:48 02 |
| | | |
| | | 2025/6/11 14:48:48 03 |
| | | |
| | | 2025/6/11 14:49:48 01 |
| | | |
| | | 2025/6/11 14:49:48 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:49:48 {"HDate":"2025-06-11 14:49:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_29"} |
| | | |
| | | 2025/6/11 14:49:48 'System.Collections.Generic.List`1[EquipmentCollectionForm.JsonData_JL]' |
| | | |
| | | 2025/6/11 14:49:48 {"HDate":"2025-06-11 14:49:00","HTechParamName":"生产数量","HResult":"OK","HCount":4,"HSourceCode":"JS_ZS_37"} |
| | | |
| | | 2025/6/11 14:49:48 02 |
| | | |
| | | 2025/6/11 14:49:48 03 |
| | |
| | | 7b8df97010623407137a76d178c6f38c03cae1d7 |
| | | 871a7c43056aeb42997e224162bd497a3a3ec561 |
| | |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.CopyComplete |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.exe |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\bin\Debug\EquipmentCollectionForm.exe.config |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\bin\Debug\EquipmentCollectionForm.exe |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\bin\Debug\EquipmentCollectionForm.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\bin\Debug\Newtonsoft.Json.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\bin\Debug\Newtonsoft.Json.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.EquipmentCollectionForm.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.Properties.Resources.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.GenerateResource.cache |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.CoreCompileInputs.cache |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.CopyComplete |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.exe |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.EquipmentCollectionForm_JiuLing.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\EquipmentCollectionForm\obj\Debug\EquipmentCollectionForm.csproj.AssemblyReference.cache |
| | |
| | | { |
| | | Application.EnableVisualStyles(); |
| | | Application.SetCompatibleTextRenderingDefault(false); |
| | | Application.Run(new ReadCSV_New()); |
| | | //Application.Run(new ReadCoordinateExcelFrom()); |
| | | Application.Run(new ZZ_GlueWeigh());//点胶称重 |
| | | } |
| | | } |
| | | } |
| | |
| | | |
| | | oCN.Commit(); |
| | | |
| | | MessageBox.Show("保存成功!"); |
| | | MessageBox.Show("保存成功! 检验单号:"+ HBillNo); |
| | | |
| | | } |
| | | } |
| | |
| | | |
| | | oCN.Commit(); |
| | | |
| | | MessageBox.Show("保存成功!"); |
| | | MessageBox.Show("保存成功! 检验单号:" + HBillNo); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | |
| | | |
| | | oCN.Commit(); |
| | | |
| | | MessageBox.Show("保存成功!"); |
| | | MessageBox.Show("保存成功! 检验单号:" + HBillNo); |
| | | } |
| | | } |
| | | catch (Exception e) |
| | |
| | | // AfterWeigh |
| | | // |
| | | this.AfterWeigh.Enabled = false; |
| | | this.AfterWeigh.Location = new System.Drawing.Point(327, 188); |
| | | this.AfterWeigh.Location = new System.Drawing.Point(291, 157); |
| | | this.AfterWeigh.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.AfterWeigh.Name = "AfterWeigh"; |
| | | this.AfterWeigh.Size = new System.Drawing.Size(133, 28); |
| | | this.AfterWeigh.Size = new System.Drawing.Size(119, 25); |
| | | this.AfterWeigh.TabIndex = 38; |
| | | // |
| | | // label5 |
| | | // |
| | | this.label5.AutoSize = true; |
| | | this.label5.Location = new System.Drawing.Point(242, 194); |
| | | this.label5.Location = new System.Drawing.Point(215, 162); |
| | | this.label5.Name = "label5"; |
| | | this.label5.Size = new System.Drawing.Size(89, 18); |
| | | this.label5.Size = new System.Drawing.Size(75, 15); |
| | | this.label5.TabIndex = 37; |
| | | this.label5.Text = "底部重量:"; |
| | | // |
| | | // BeforeWeigh |
| | | // |
| | | this.BeforeWeigh.Enabled = false; |
| | | this.BeforeWeigh.Location = new System.Drawing.Point(104, 186); |
| | | this.BeforeWeigh.Location = new System.Drawing.Point(92, 155); |
| | | this.BeforeWeigh.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.BeforeWeigh.Name = "BeforeWeigh"; |
| | | this.BeforeWeigh.Size = new System.Drawing.Size(121, 28); |
| | | this.BeforeWeigh.Size = new System.Drawing.Size(108, 25); |
| | | this.BeforeWeigh.TabIndex = 35; |
| | | // |
| | | // label6 |
| | | // |
| | | this.label6.AutoSize = true; |
| | | this.label6.Location = new System.Drawing.Point(12, 191); |
| | | this.label6.Location = new System.Drawing.Point(11, 159); |
| | | this.label6.Name = "label6"; |
| | | this.label6.Size = new System.Drawing.Size(89, 18); |
| | | this.label6.Size = new System.Drawing.Size(75, 15); |
| | | this.label6.TabIndex = 36; |
| | | this.label6.Text = "顶部重量:"; |
| | | // |
| | | // btnRep |
| | | // |
| | | this.btnRep.Location = new System.Drawing.Point(471, 105); |
| | | this.btnRep.Location = new System.Drawing.Point(419, 87); |
| | | this.btnRep.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnRep.Name = "btnRep"; |
| | | this.btnRep.Size = new System.Drawing.Size(78, 38); |
| | | this.btnRep.Size = new System.Drawing.Size(69, 32); |
| | | this.btnRep.TabIndex = 40; |
| | | this.btnRep.Text = "更换"; |
| | | this.btnRep.UseVisualStyleBackColor = true; |
| | |
| | | // |
| | | // btnSave |
| | | // |
| | | this.btnSave.Location = new System.Drawing.Point(576, 107); |
| | | this.btnSave.Location = new System.Drawing.Point(512, 89); |
| | | this.btnSave.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnSave.Name = "btnSave"; |
| | | this.btnSave.Size = new System.Drawing.Size(78, 38); |
| | | this.btnSave.Size = new System.Drawing.Size(69, 32); |
| | | this.btnSave.TabIndex = 41; |
| | | this.btnSave.Text = "保存"; |
| | | this.btnSave.UseVisualStyleBackColor = true; |
| | |
| | | "首件检验单", |
| | | "工序检验单", |
| | | "巡检检验单"}); |
| | | this.cmbJYSelect.Location = new System.Drawing.Point(104, 98); |
| | | this.cmbJYSelect.Location = new System.Drawing.Point(92, 82); |
| | | this.cmbJYSelect.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.cmbJYSelect.Name = "cmbJYSelect"; |
| | | this.cmbJYSelect.Size = new System.Drawing.Size(121, 26); |
| | | this.cmbJYSelect.Size = new System.Drawing.Size(108, 23); |
| | | this.cmbJYSelect.TabIndex = 43; |
| | | // |
| | | // label1 |
| | | // |
| | | this.label1.AutoSize = true; |
| | | this.label1.Location = new System.Drawing.Point(9, 102); |
| | | this.label1.Location = new System.Drawing.Point(8, 85); |
| | | this.label1.Name = "label1"; |
| | | this.label1.Size = new System.Drawing.Size(89, 18); |
| | | this.label1.Size = new System.Drawing.Size(75, 15); |
| | | this.label1.TabIndex = 42; |
| | | this.label1.Text = "检验类型:"; |
| | | // |
| | | // labHMakerID |
| | | // |
| | | this.labHMakerID.AutoSize = true; |
| | | this.labHMakerID.Location = new System.Drawing.Point(611, 30); |
| | | this.labHMakerID.Location = new System.Drawing.Point(543, 25); |
| | | this.labHMakerID.Name = "labHMakerID"; |
| | | this.labHMakerID.Size = new System.Drawing.Size(107, 18); |
| | | this.labHMakerID.Size = new System.Drawing.Size(95, 15); |
| | | this.labHMakerID.TabIndex = 48; |
| | | this.labHMakerID.Text = "labHMakerID"; |
| | | this.labHMakerID.Visible = false; |
| | | // |
| | | // txtHMakerNumber |
| | | // |
| | | this.txtHMakerNumber.Location = new System.Drawing.Point(327, 20); |
| | | this.txtHMakerNumber.Location = new System.Drawing.Point(291, 17); |
| | | this.txtHMakerNumber.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHMakerNumber.Name = "txtHMakerNumber"; |
| | | this.txtHMakerNumber.Size = new System.Drawing.Size(161, 28); |
| | | this.txtHMakerNumber.Size = new System.Drawing.Size(144, 25); |
| | | this.txtHMakerNumber.TabIndex = 47; |
| | | // |
| | | // label2 |
| | | // |
| | | this.label2.AutoSize = true; |
| | | this.label2.Location = new System.Drawing.Point(268, 27); |
| | | this.label2.Location = new System.Drawing.Point(238, 22); |
| | | this.label2.Name = "label2"; |
| | | this.label2.Size = new System.Drawing.Size(53, 18); |
| | | this.label2.Size = new System.Drawing.Size(45, 15); |
| | | this.label2.TabIndex = 46; |
| | | this.label2.Text = "编码:"; |
| | | // |
| | | // txtHMaker |
| | | // |
| | | this.txtHMaker.Location = new System.Drawing.Point(104, 27); |
| | | this.txtHMaker.Location = new System.Drawing.Point(92, 22); |
| | | this.txtHMaker.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtHMaker.Name = "txtHMaker"; |
| | | this.txtHMaker.Size = new System.Drawing.Size(121, 28); |
| | | this.txtHMaker.Size = new System.Drawing.Size(108, 25); |
| | | this.txtHMaker.TabIndex = 31; |
| | | this.txtHMaker.Enter += new System.EventHandler(this.textBox2_Enter); |
| | | this.txtHMaker.KeyDown += new System.Windows.Forms.KeyEventHandler(this.textBox2_KeyDown); |
| | |
| | | // label3 |
| | | // |
| | | this.label3.AutoSize = true; |
| | | this.label3.Location = new System.Drawing.Point(26, 32); |
| | | this.label3.Location = new System.Drawing.Point(23, 27); |
| | | this.label3.Name = "label3"; |
| | | this.label3.Size = new System.Drawing.Size(71, 18); |
| | | this.label3.Size = new System.Drawing.Size(60, 15); |
| | | this.label3.TabIndex = 45; |
| | | this.label3.Text = "制单人:"; |
| | | // |
| | | // cmbPro |
| | | // |
| | | this.cmbPro.FormattingEnabled = true; |
| | | this.cmbPro.Location = new System.Drawing.Point(104, 144); |
| | | this.cmbPro.Location = new System.Drawing.Point(92, 120); |
| | | this.cmbPro.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.cmbPro.Name = "cmbPro"; |
| | | this.cmbPro.Size = new System.Drawing.Size(121, 26); |
| | | this.cmbPro.Size = new System.Drawing.Size(108, 23); |
| | | this.cmbPro.TabIndex = 50; |
| | | // |
| | | // txtPro |
| | | // |
| | | this.txtPro.AutoSize = true; |
| | | this.txtPro.Location = new System.Drawing.Point(45, 148); |
| | | this.txtPro.Location = new System.Drawing.Point(40, 123); |
| | | this.txtPro.Name = "txtPro"; |
| | | this.txtPro.Size = new System.Drawing.Size(53, 18); |
| | | this.txtPro.Size = new System.Drawing.Size(45, 15); |
| | | this.txtPro.TabIndex = 49; |
| | | this.txtPro.Text = "工序:"; |
| | | // |
| | | // label4 |
| | | // |
| | | this.label4.AutoSize = true; |
| | | this.label4.Location = new System.Drawing.Point(304, 66); |
| | | this.label4.Location = new System.Drawing.Point(270, 55); |
| | | this.label4.Name = "label4"; |
| | | this.label4.Size = new System.Drawing.Size(71, 18); |
| | | this.label4.Size = new System.Drawing.Size(60, 15); |
| | | this.label4.TabIndex = 54; |
| | | this.label4.Text = "批次码:"; |
| | | // |
| | | // txtPcm |
| | | // |
| | | this.txtPcm.Location = new System.Drawing.Point(372, 61); |
| | | this.txtPcm.Location = new System.Drawing.Point(331, 51); |
| | | this.txtPcm.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtPcm.Name = "txtPcm"; |
| | | this.txtPcm.Size = new System.Drawing.Size(116, 28); |
| | | this.txtPcm.Size = new System.Drawing.Size(104, 25); |
| | | this.txtPcm.TabIndex = 53; |
| | | // |
| | | // txtLzk |
| | | // |
| | | this.txtLzk.Location = new System.Drawing.Point(104, 61); |
| | | this.txtLzk.Location = new System.Drawing.Point(92, 51); |
| | | this.txtLzk.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.txtLzk.Name = "txtLzk"; |
| | | this.txtLzk.Size = new System.Drawing.Size(194, 28); |
| | | this.txtLzk.Size = new System.Drawing.Size(173, 25); |
| | | this.txtLzk.TabIndex = 52; |
| | | this.txtLzk.KeyDown += new System.Windows.Forms.KeyEventHandler(this.txtLzk_KeyDown); |
| | | // |
| | | // label7 |
| | | // |
| | | this.label7.AutoSize = true; |
| | | this.label7.Location = new System.Drawing.Point(26, 66); |
| | | this.label7.Location = new System.Drawing.Point(23, 55); |
| | | this.label7.Name = "label7"; |
| | | this.label7.Size = new System.Drawing.Size(71, 18); |
| | | this.label7.Size = new System.Drawing.Size(60, 15); |
| | | this.label7.TabIndex = 51; |
| | | this.label7.Text = "流转卡:"; |
| | | // |
| | | // btnHMaker |
| | | // |
| | | this.btnHMaker.Location = new System.Drawing.Point(511, 13); |
| | | this.btnHMaker.Location = new System.Drawing.Point(454, 11); |
| | | this.btnHMaker.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnHMaker.Name = "btnHMaker"; |
| | | this.btnHMaker.Size = new System.Drawing.Size(94, 38); |
| | | this.btnHMaker.Size = new System.Drawing.Size(84, 32); |
| | | this.btnHMaker.TabIndex = 55; |
| | | this.btnHMaker.Text = "更换用户"; |
| | | this.btnHMaker.UseVisualStyleBackColor = true; |
| | |
| | | // ListData |
| | | // |
| | | this.ListData.FormattingEnabled = true; |
| | | this.ListData.ItemHeight = 18; |
| | | this.ListData.Location = new System.Drawing.Point(2, 232); |
| | | this.ListData.ItemHeight = 15; |
| | | this.ListData.Location = new System.Drawing.Point(2, 193); |
| | | this.ListData.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.ListData.Name = "ListData"; |
| | | this.ListData.Size = new System.Drawing.Size(776, 292); |
| | | this.ListData.Size = new System.Drawing.Size(690, 244); |
| | | this.ListData.TabIndex = 56; |
| | | // |
| | | // btnBeFoSelect |
| | | // |
| | | this.btnBeFoSelect.Location = new System.Drawing.Point(480, 181); |
| | | this.btnBeFoSelect.Location = new System.Drawing.Point(427, 151); |
| | | this.btnBeFoSelect.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.btnBeFoSelect.Name = "btnBeFoSelect"; |
| | | this.btnBeFoSelect.Size = new System.Drawing.Size(125, 38); |
| | | this.btnBeFoSelect.Size = new System.Drawing.Size(111, 32); |
| | | this.btnBeFoSelect.TabIndex = 39; |
| | | this.btnBeFoSelect.Text = "查询重量"; |
| | | this.btnBeFoSelect.UseVisualStyleBackColor = true; |
| | |
| | | // label8 |
| | | // |
| | | this.label8.AutoSize = true; |
| | | this.label8.Location = new System.Drawing.Point(268, 107); |
| | | this.label8.Location = new System.Drawing.Point(238, 89); |
| | | this.label8.Name = "label8"; |
| | | this.label8.Size = new System.Drawing.Size(53, 18); |
| | | this.label8.Size = new System.Drawing.Size(45, 15); |
| | | this.label8.TabIndex = 58; |
| | | this.label8.Text = "设备:"; |
| | | // |
| | |
| | | this.cmbEquip.FormattingEnabled = true; |
| | | this.cmbEquip.Items.AddRange(new object[] { |
| | | "全部", |
| | | "组装1", |
| | | "组装2"}); |
| | | this.cmbEquip.Location = new System.Drawing.Point(327, 102); |
| | | "组装2", |
| | | "组装3"}); |
| | | this.cmbEquip.Location = new System.Drawing.Point(291, 85); |
| | | this.cmbEquip.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.cmbEquip.Name = "cmbEquip"; |
| | | this.cmbEquip.Size = new System.Drawing.Size(121, 26); |
| | | this.cmbEquip.Size = new System.Drawing.Size(108, 23); |
| | | this.cmbEquip.TabIndex = 57; |
| | | // |
| | | // ZZ_GlueWeigh |
| | | // |
| | | this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F); |
| | | this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F); |
| | | this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; |
| | | this.ClientSize = new System.Drawing.Size(784, 533); |
| | | this.ClientSize = new System.Drawing.Size(697, 444); |
| | | this.Controls.Add(this.label8); |
| | | this.Controls.Add(this.cmbEquip); |
| | | this.Controls.Add(this.ListData); |
| | |
| | | this.Controls.Add(this.label5); |
| | | this.Controls.Add(this.BeforeWeigh); |
| | | this.Controls.Add(this.label6); |
| | | this.Margin = new System.Windows.Forms.Padding(3, 2, 3, 2); |
| | | this.Name = "ZZ_GlueWeigh"; |
| | | this.Text = "点胶称重"; |
| | | this.Activated += new System.EventHandler(this.ZZ_GlueWeigh_Activated); |
| | |
| | | string HNumber = ""; |
| | | switch (cmbEquip) |
| | | { |
| | | case "组装1": |
| | | case "组装2": |
| | | HNumber = "CMR-ZD-SD-002S2"; // CMR-ZD-SD-002 |
| | | break; |
| | | case "组装2": |
| | | case "组装3": |
| | | HNumber = "CMR-ZD-SD-006S2"; // CMR-ZD-SD-004 |
| | | break; |
| | | default: |
| | |
| | | 4e64d6417effead0601237ab1f2ba09cb6ee9653 |
| | | 163f08f15d14d2b8fd16bc5ab8d0fe7bc8b936a7 |
| | |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.pdb |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadyDataForm_New.resources |
| | | D:\工作代码\智云迈思\插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadCSV_New.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\HslCommunication.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\WFormReadData_SMR.exe.config |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\WFormReadData_SMR.exe |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\WFormReadData_SMR.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\BouncyCastle.Crypto.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\DocumentFormat.OpenXml.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\DocumentFormat.OpenXml.Framework.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\ICSharpCode.SharpZipLib.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\Newtonsoft.Json.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OOXML.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OpenXml4Net.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OpenXmlFormats.dll |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\BouncyCastle.Crypto.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\DocumentFormat.OpenXml.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\DocumentFormat.OpenXml.Framework.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\HslCommunication.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\ICSharpCode.SharpZipLib.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\ICSharpCode.SharpZipLib.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\Newtonsoft.Json.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OOXML.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OOXML.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OpenXml4Net.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OpenXml4Net.xml |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\bin\Debug\NPOI.OpenXmlFormats.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.JZ_ReadDate.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.Properties.Resources.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadCoordinateExcelFrom.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadCSV_New.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadCSV.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadyDataForm_New.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ReadyDataForm.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.ZZ_GlueWeigh.resources |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.GenerateResource.cache |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.CoreCompileInputs.cache |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.CopyComplete |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.exe |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.pdb |
| | | D:\工作代码\智云迈思\单品过站插件\WFormSynchronizeData_SMR\WFormSynchronizeData_SMR\WFormReadData_SMR\obj\Debug\WFormReadData_SMR.csproj.AssemblyReference.cache |