init: 潍柴发动机线 中央控制程序 项目首次入库
This commit is contained in:
202
SCADA/MES_A95/MIS_upload_QC.cs
Normal file
202
SCADA/MES_A95/MIS_upload_QC.cs
Normal file
@@ -0,0 +1,202 @@
|
||||
|
||||
using CentralControl;
|
||||
using DataLinkMesWork;
|
||||
using Newtonsoft.Json;
|
||||
using SlMesDbIterface;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Data;
|
||||
using System.Threading;
|
||||
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
namespace MesWork
|
||||
{
|
||||
/// <summary>
|
||||
/// 质量数据的拆解和存储
|
||||
/// </summary>
|
||||
public class MesWork_QC_upload
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// 同步执行任务
|
||||
/// </summary>
|
||||
public static void SyncTask_UploadMeasureData(string id_tagCF)
|
||||
{
|
||||
new Thread(new ThreadStart(delegate ()
|
||||
{
|
||||
string msg = "";
|
||||
try
|
||||
{
|
||||
// 查询质量数据
|
||||
bool isUploadOk = false;
|
||||
var sql_AMS_Plan = $"SELECT * FROM 质量数据上传_视图" +
|
||||
$" where [接口输出] != 1 and id_tagCF = {id_tagCF} order by [工位号],[TagID] ";
|
||||
bool isOk = SqlOperation.ExecuteSql(sql_AMS_Plan, out DataTable dt_MeasureData, out string err1);
|
||||
if (isOk)
|
||||
{
|
||||
if(dt_MeasureData.Rows.Count > 0)
|
||||
{
|
||||
isUploadOk = upLoadData(dt_MeasureData, out msg);
|
||||
}
|
||||
}
|
||||
if(isUploadOk)
|
||||
{
|
||||
upLoadUpdate(id_tagCF, 1, msg);
|
||||
}
|
||||
else
|
||||
{
|
||||
upLoadUpdate(id_tagCF, 2, msg);
|
||||
}
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
msg = err.Message;
|
||||
upLoadUpdate(id_tagCF, 2, msg);
|
||||
}
|
||||
}))
|
||||
{ IsBackground = true }.Start();
|
||||
}
|
||||
|
||||
public static bool upLoadData(DataTable dt, out string msg)
|
||||
{
|
||||
try
|
||||
{
|
||||
List<SapMeasureData> SapMeasureDataList = new List<SapMeasureData>();
|
||||
string dateShort = new DateTime().ToString("yyyyMMdd");
|
||||
for (int i = 0; i < dt.Rows.Count; i++)
|
||||
{
|
||||
SapMeasureData sapMeasureData = new SapMeasureData();
|
||||
sapMeasureData.ID = dt.Rows[i]["Id"].ToString();
|
||||
sapMeasureData.operationCode = dt.Rows[i]["工位代码"].ToString();
|
||||
sapMeasureData.itemCode = dt.Rows[i]["订货号"].ToString();
|
||||
sapMeasureData.productCode = dt.Rows[i]["EngineID"].ToString();
|
||||
sapMeasureData.characterName = dt.Rows[i]["测量位置"].ToString() + dt.Rows[i]["测量项目"].ToString();
|
||||
sapMeasureData.content = "";
|
||||
sapMeasureData.cNumber = "";
|
||||
sapMeasureData.positionNumber = dt.Rows[i]["列位置"].ToString();
|
||||
sapMeasureData.specialCategory = "";
|
||||
sapMeasureData.cImportance = "";
|
||||
sapMeasureData.unit = dt.Rows[i]["测量单位"].ToString();
|
||||
sapMeasureData.normalMin = Convert.ToInt32(dt.Rows[i]["下限值"]);
|
||||
sapMeasureData.normalMax = Convert.ToInt32(dt.Rows[i]["上限值"]);
|
||||
sapMeasureData.checkInput = dt.Rows[i]["TagValue"].ToString();
|
||||
sapMeasureData.isNormal = Convert.ToInt32(dt.Rows[i]["IsGoodBad"]);
|
||||
sapMeasureData.checkToolNumber = "";
|
||||
sapMeasureData.checkToolName = "";
|
||||
sapMeasureData.machineNumber = "";
|
||||
sapMeasureData.machineSpindleNumber = "";
|
||||
sapMeasureData.machineClampingNumber = "";
|
||||
sapMeasureData.inputDate = dt.Rows[i]["操作时间"].ToString();
|
||||
sapMeasureData.reMarks = "";
|
||||
SapMeasureDataList.Add(sapMeasureData);
|
||||
}
|
||||
ResponseBody_WebAPI_Boms res = CALL_Interfalce_WebAPI.RequestPost_UploadMeasureData_To_SAP(JsonConvert.SerializeObject(SapMeasureDataList));
|
||||
|
||||
if (res.code == "200")
|
||||
{
|
||||
msg = res.message;
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
msg = res.message;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
msg = err.Message;
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
public static void upLoadUpdate(string id_tagCF, int isOk, string msg)
|
||||
{
|
||||
try
|
||||
{
|
||||
var sql_AMS_Plan = $"UPDATE [dbo].[测量数据合格] SET [接口输出] = {isOk},数据说明 = '{msg}'" +
|
||||
$" where [id_tagCF] = '{id_tagCF}'";
|
||||
DataAccess.ExecuteDataTable(sql_AMS_Plan, out DataTable dt_MeasureData);
|
||||
}
|
||||
catch (Exception err)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
}
|
||||
class SapMeasureData
|
||||
{
|
||||
/*
|
||||
id number(12) id
|
||||
line_id varchar2(10) y 生产线id
|
||||
operation_code varchar2(10) y 工位编码
|
||||
item_code varchar2(255) y 物料编码
|
||||
product_code varchar2(16) y 序列号
|
||||
character_name varchar2(255) y 特性名称
|
||||
content varchar2(255) y 特性内容(产品/过程规格/公差)φ是大写
|
||||
c_number varchar2(40) y 特性编号
|
||||
position_number varchar2(40) y 位置编号
|
||||
special_category varchar2(10) y 特殊特性分类
|
||||
c_importance varchar2(10) y 特性重要度
|
||||
unit varchar2(10) y 单位
|
||||
normal_min number y 合格下限
|
||||
normal_max number y 合格上限
|
||||
check_input varchar2(255) y 质检结果
|
||||
isnormal number(1) y 是否合格(0:否;1:是;)
|
||||
check_tool_number varchar2(30) y 测量设备编号
|
||||
check_tool_name varchar2(80) y 测量设备名称
|
||||
machine_number varchar2(40) y null 加工设备编号
|
||||
machine_spindle_number varchar2(40) y null 加工设备主轴编号
|
||||
machine_clamping_number varchar2(40) y 加工设备工装编号
|
||||
input_date date y 录入时间
|
||||
remarks varchar2(255) y 备注
|
||||
|
||||
|
||||
|
||||
*/
|
||||
|
||||
public string ID;
|
||||
public string lineId = MesWorkForm.LineID_Product;
|
||||
public string operationCode;
|
||||
public string itemCode;
|
||||
public string productCode;
|
||||
public string characterName;
|
||||
public string content;
|
||||
public string cNumber;
|
||||
public string positionNumber;
|
||||
public string specialCategory;
|
||||
public string cImportance;
|
||||
public string unit;
|
||||
public int normalMin;
|
||||
public int normalMax;
|
||||
public string checkInput;
|
||||
public int isNormal;
|
||||
public string checkToolNumber;
|
||||
public string checkToolName;
|
||||
public string machineNumber;
|
||||
public string machineSpindleNumber;
|
||||
public string machineClampingNumber;
|
||||
public string inputDate;
|
||||
public string reMarks;
|
||||
|
||||
|
||||
}
|
||||
class SapMeasureDataResult
|
||||
{
|
||||
public List<SapMeasureData> SapMeasureDataList;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user