using System; using System.Collections.Generic; using System.Linq; using System.Text; using QMAPP.FJC.Entity.Basic; using QMAPP.FJC.Entity.Operation; using QMFrameWork.Data; using QMAPP.FJC.Entity.ProcessParameter; using QMAPP.FJC.DAL; using System.Reflection; using QMFrameWork.Log; using QMAPP.FJC.Entity.QT; using QMAPP.FJC.DAL.QT; namespace QMAPP.FJC.BLL.Process { /// /// 加工参数处理类 /// public class ParameterDeal { private List paraList; private IDataSession session; private MainOperation mainOpe; /// /// 插入加工参数 /// /// /// /// public void InsertParameter(List paraList, MainOperation entity, IDataSession session) { this.paraList = paraList; this.session = session; this.mainOpe = entity; try { switch (entity.PROCESSTYPE) { case "0": //插入搪塑加工参数 InsertSlushParameter(); break; case "6": //插入冷刀弱化加工参数 InsertBurnParameter(); break; case "9": //插入浇注加工参数 InsertCastingParameter(); break; case "11": //插入冲切加工参数 InsertPunchParameter(); break; case "12": //插入铣削加工参数 InsertMilingParameter(); break; case "14": //插入超声波加工参数 InsertUltrasParameter(); break; case "15": //插入红外焊接加工参数 InsertHotweldParameter(); break; default: break; } } catch (Exception ex) { } } ///插入搪塑加工参数 private void InsertSlushParameter() { SlushParamter slushParamter = new SlushParamter(); try { slushParamter.PID = Guid.NewGuid().ToString(); slushParamter.IOID = mainOpe.PID; slushParamter.EID = mainOpe.PDID; slushParamter.PRODUCTCODE = mainOpe.PRODUCTCODE; slushParamter.MACHINECODDE = mainOpe.MACHINECODDE; slushParamter.MACHINENAME = mainOpe.MACHINENAME; slushParamter.CREATEDATE = System.DateTime.Now; Type t = typeof(SlushParamter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(slushParamter, pc.PARAVALUE, null); } //SlushParamterDAL slushParaDal = new SlushParamterDAL(); //slushParaDal.BaseSession = session; //slushParaDal.Insert(slushParamter); } catch (Exception ex) { } } /// /// 插入注塑加工参数 /// private void InsertInjection() { InJectionParameter parameter = new InJectionParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(InJectionParameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //InjectionParameterDAL injectParaDal = new InjectionParameterDAL(); //injectParaDal.BaseSession = session; //injectParaDal.Insert(parameter); } /// /// 插入冷刀弱化加工参数 /// private void InsertBurnParameter() { try { BurnParameter parameter = new BurnParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(BurnParameter); List decimalList = paraList.Where(o => o.DATATYPE == "DECIMAL") .ToList(); foreach (ParameterConfig pc in decimalList) { var decimalValue = Convert.ToDecimal(pc.PARAVALUE); t.GetProperty(pc.COLUMNCODE).SetValue(parameter, decimalValue, null); } List otherList = paraList.Except(decimalList).ToList(); //胎具号 if (otherList.Count(o => o.COLUMNCODE == "TOOLCODE") > 0) { parameter.TOOLCODE = otherList.First(o => o.COLUMNCODE == "TOOLCODE").PARAVALUE == null ? "" : otherList.First(o => o.COLUMNCODE == "TOOLCODE").PARAVALUE.ToString(); } if (otherList.Count(o => o.COLUMNCODE == "BLADECOUNTER") > 0) { parameter.BLADECOUNTER = otherList.First(o => o.COLUMNCODE == "BLADECOUNTER").PARAVALUE == null ? "" : otherList.First(o => o.COLUMNCODE == "BLADECOUNTER").PARAVALUE.ToString(); } if (otherList.Count(o => o.COLUMNCODE == "PROGRAMNUMBER") > 0) { parameter.PROGRAMNUMBER = otherList.First(o => o.COLUMNCODE == "PROGRAMNUMBER").PARAVALUE == null ? "" : otherList.First(o => o.COLUMNCODE == "PROGRAMNUMBER").PARAVALUE.ToString(); } if (otherList.Count(o => o.COLUMNCODE == "RESULT") > 0) { parameter.RESULT = otherList.First(o => o.COLUMNCODE == "RESULT").PARAVALUE == null ? "" : otherList.First(o => o.COLUMNCODE == "RESULT").PARAVALUE.ToString(); } if (otherList.Count(o => o.COLUMNCODE == "INDENTITYCODE") > 0) { parameter.INDENTITYCODE = otherList.First(o => o.COLUMNCODE == "INDENTITYCODE").PARAVALUE == null ? "" : otherList.First(o => o.COLUMNCODE == "INDENTITYCODE").PARAVALUE.ToString(); } //固定 parameter.MACHINECODE = "3"; #region 脱模剂 List releaseList = paraList.Where(o => o.COLUMNCODE.Contains("RELEASE")).OrderBy(o => o.COLUMNCODE) .ToList(); string releaseResult = ""; foreach (var re in releaseList) { releaseResult += ((char)Convert.ToInt32(re.PARAVALUE)).ToString(); } parameter.RELEASE = releaseResult.Trim(); #endregion #region 工作时间 List workList = paraList.Where(o => o.COLUMNCODE.Contains("WORKTIME")) .ToList(); if (workList.Count > 0) { string workTime = ""; if (workList.Count(o => o.COLUMNCODE == "WORKTIMEHOURDEC") > 0) { workTime += workList.First(o => o.COLUMNCODE == "WORKTIMEHOURDEC").PARAVALUE == null ? "" : ((char)Convert.ToInt32(otherList.First(o => o.COLUMNCODE == "WORKTIMEHOURDEC").PARAVALUE.ToString())).ToString(); } if (workList.Count(o => o.COLUMNCODE == "WORKTIMEHOUR") > 0) { workTime += workList.First(o => o.COLUMNCODE == "WORKTIMEHOUR").PARAVALUE == null ? "" : ((char)Convert.ToInt32(otherList.First(o => o.COLUMNCODE == "WORKTIMEHOUR").PARAVALUE.ToString())).ToString(); } workTime += ":"; if (workList.Count(o => o.COLUMNCODE == "WORKTIMEMINUTEDEC") > 0) { workTime += workList.First(o => o.COLUMNCODE == "WORKTIMEMINUTEDEC").PARAVALUE == null ? "" : ((char)Convert.ToInt32(otherList.First(o => o.COLUMNCODE == "WORKTIMEMINUTEDEC").PARAVALUE.ToString())).ToString(); } if (workList.Count(o => o.COLUMNCODE == "WORKTIMEMINUTE") > 0) { workTime += workList.First(o => o.COLUMNCODE == "WORKTIMEMINUTE").PARAVALUE == null ? "" : ((char)Convert.ToInt32(otherList.First(o => o.COLUMNCODE == "WORKTIMEMINUTE").PARAVALUE.ToString())).ToString(); } parameter.WORKTIME = workTime; } #endregion //BurnParameterDAL burnParaDal = new BurnParameterDAL(); //burnParaDal.BaseSession = session; //burnParaDal.Insert(parameter); } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo=ex, Info = "插入冷刀加工参数异常!加工记录主键:" + mainOpe.PID }); } } /// /// 插入火焰加工参数信息 /// private void InsertFlameParameter() { FlamepParameter parameter = new FlamepParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(FlamepParameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //FlameParameterDAL flameParaDal = new FlameParameterDAL(); //flameParaDal.BaseSession = session; //flameParaDal.Insert(parameter); } /// /// 插入预热加工参数 /// private void InsertPreheatParameter() { PreheatParameter parameter = new PreheatParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(PreheatParameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //PreHeatParameterDAL paraDal = new PreHeatParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入浇注加工参数 /// private void InsertCastingParameter() { CastingParameter parameter = new CastingParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; //parameter.CREATEDATE = System.DateTime.Now; try { #region 操作时间 //string year = paraList.First(o => o.COLUMNCODE.Contains("YEAR")).PARAVALUE.ToString(); //string month = paraList.First(o => o.COLUMNCODE.Contains("MONTH")).PARAVALUE.ToString(); //string day = paraList.First(o => o.COLUMNCODE.Contains("DAY")).PARAVALUE.ToString(); //string hour = paraList.First(o => o.COLUMNCODE.Contains("HOUR")).PARAVALUE.ToString(); //string minnute = paraList.First(o => o.COLUMNCODE.Contains("MINUTE")).PARAVALUE.ToString(); //string second = paraList.First(o => o.COLUMNCODE.Contains("SECOND")).PARAVALUE.ToString(); //Convert.ToDateTime(year + "-" + month + "-" + day + " " + hour + ":" + minnute + ":" + second); parameter.CREATEDATE = System.DateTime.Now; #endregion try { var moldnumber = paraList.First(o => o.COLUMNCODE.Contains("MOULDNO")).PARAVALUE; if (moldnumber != null && string.IsNullOrEmpty(moldnumber.ToString()) == false) { parameter.MOULDNUMBER = Convert.ToInt32(moldnumber); } var flowOjb = paraList.First(o => o.COLUMNCODE.Contains("FLOW")).PARAVALUE; if (flowOjb != null && string.IsNullOrEmpty(flowOjb.ToString()) == false) { parameter.FLOW = Convert.ToDecimal(flowOjb); } var stressPercentObj = paraList.First(o => o.COLUMNCODE.Contains("STRESSPERCENT")).PARAVALUE; if (stressPercentObj != null && string.IsNullOrEmpty(stressPercentObj.ToString()) == false) { parameter.STRESSPERCENT = Convert.ToDecimal(stressPercentObj); } var temp1 = paraList.First(o => o.COLUMNCODE.Contains("METARIALTEMPRATURE")).PARAVALUE; if (temp1 != null && string.IsNullOrEmpty(temp1.ToString()) == false) { parameter.METARIALTEMPRATURE = Convert.ToDecimal(temp1); } var temp2 = paraList.First(o => o.COLUMNCODE.Contains("METARIALTEMPRATURETWO")).PARAVALUE; if (temp2 != null && string.IsNullOrEmpty(temp2.ToString()) == false) { parameter.METARIALTEMPRATURETWO = Convert.ToDecimal(temp2); } } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { Info = ex.Message }); } //CastingParameterDAL paraDal = new CastingParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { Info = ex.Message }); } } public void InsertCastingParameter(List paraList) { try { CastingParameter parameter = new CastingParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = Guid.NewGuid().ToString(); parameter.PDID = Guid.NewGuid().ToString(); parameter.PRODUCTTYPE = "1"; parameter.PRODUCTCODE = ""; parameter.MACHINECODDE = "009"; parameter.MACHINENAME = "009"; //parameter.CREATEDATE = System.DateTime.Now; #region 操作时间 string year = paraList.First(o => o.COLUMNCODE.Contains("YEAR")).PARAVALUE.ToString(); string month = paraList.First(o => o.COLUMNCODE.Contains("MONTH")).PARAVALUE.ToString(); string day = paraList.First(o => o.COLUMNCODE.Contains("DAY")).PARAVALUE.ToString(); string hour = paraList.First(o => o.COLUMNCODE.Contains("HOUR")).PARAVALUE.ToString(); string minnute = paraList.First(o => o.COLUMNCODE.Contains("MINUTE")).PARAVALUE.ToString(); string second = paraList.First(o => o.COLUMNCODE.Contains("SECOND")).PARAVALUE.ToString(); parameter.CREATEDATE = Convert.ToDateTime(year + "-" + month + "-" + day + " " + hour + ":" + minnute + ":" + second); #endregion parameter.FLOW = Convert.ToDecimal(paraList.First(o => o.COLUMNCODE.Contains("FLOW")).PARAVALUE.ToString()); parameter.STRESSPERCENT = Convert.ToDecimal(paraList.First(o => o.COLUMNCODE.Contains("STRESSPERCENT")).PARAVALUE.ToString()); parameter.METARIALTEMPRATURE = Convert.ToDecimal(paraList.First(o => o.COLUMNCODE.Contains("METARIALTEMPRATURE")).PARAVALUE.ToString()); parameter.METARIALTEMPRATURETWO = Convert.ToDecimal(paraList.First(o => o.COLUMNCODE.Contains("METARIALTEMPRATURETWO")).PARAVALUE.ToString()); parameter.MOULDNUMBER = Convert.ToInt32(paraList.First(o => o.COLUMNCODE.Contains("MOULDNO")).PARAVALUE.ToString()); //CastingParameterDAL paraDal = new CastingParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } catch (Exception) { } } /// /// 插入红外扫描加工参数 /// private void InsertHotScanParameter() { HostcanPatameter parameter = new HostcanPatameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(HostcanPatameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //HotScanParameterDAL paraDal = new HotScanParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入冲切加工参数 /// private void InsertPunchParameter() { PunchParameter parameter = new PunchParameter(mainOpe.PRODUCTCODE); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; //var worktime = paraList.First(o => o.COLUMNCODE == "WORKTIME").PARAVALUE; //parameter.WORKTIME = Convert.ToDecimal(worktime) / 10; //var pc1 = paraList.First(o => o.COLUMNCODE == "PRESSURECIRCUIT1").PARAVALUE; //parameter.PRESSURECIRCUIT1 = Convert.ToInt32(pc1); //var pc2 = paraList.First(o => o.COLUMNCODE == "PRESSURECIRCUIT2").PARAVALUE; //parameter.PRESSURECIRCUIT2 = Convert.ToInt32(pc2); //var pc3 = paraList.First(o => o.COLUMNCODE == "PRESSURECIRCUIT3").PARAVALUE; //parameter.PRESSURECIRCUIT3 = Convert.ToInt32(pc3); //var pc4 = paraList.First(o => o.COLUMNCODE == "PRESSURECIRCUIT4").PARAVALUE; //parameter.PRESSURECIRCUIT4 = Convert.ToInt32(pc4); //var result = paraList.First(o => o.COLUMNCODE == "PROCESSOK").PARAVALUE; //parameter.RESULT = result.ToString(); //parameter.RESULT = (paraList.Count(o => o.COLUMNCODE == "ProcessOK") > 0) ? paraList.First(o => o.COLUMNCODE == "ProcessOK").PARAVALUE.ToString() : ""; //if (parameter.RESULT == "True") //{ // parameter.RESULT = "OK"; //} //else //{ // parameter.RESULT = "NOK"; //} ////PunchParameterDAL paraDal = new PunchParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入铣削加工参数 /// private void InsertMilingParameter() { try { MilingParameter parameter = new MilingParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; //parameter.CREATEDATE = System.DateTime.Now; //(char)Convert.ToInt32(result) string hourDec = (paraList.Count(o => o.COLUMNCODE == "WORKTIMEHOURDEC") > 0) ? ((char)Convert.ToInt32(paraList.First(o => o.COLUMNCODE == "WORKTIMEHOURDEC").PARAVALUE.ToString())).ToString() : "0"; string hour = (paraList.Count(o => o.COLUMNCODE == "WORKTIMEHOUR") > 0) ? ((char)Convert.ToInt32(paraList.First(o => o.COLUMNCODE == "WORKTIMEHOUR").PARAVALUE.ToString())).ToString() : "0"; string minuteDec = (paraList.Count(o => o.COLUMNCODE == "WORKTIMEMINUTEDEC") > 0) ? ((char)Convert.ToInt32(paraList.First(o => o.COLUMNCODE == "WORKTIMEMINUTEDEC").PARAVALUE.ToString())).ToString() : "0"; string minute = (paraList.Count(o => o.COLUMNCODE == "WORKTIMEMINUTE") > 0) ? ((char)Convert.ToInt32(paraList.First(o => o.COLUMNCODE == "WORKTIMEMINUTE").PARAVALUE.ToString())).ToString() : "0"; DateTime dt = System.DateTime.Now; int actuallyHour = (Convert.ToInt32(hourDec + hour) == 0) ? dt.Hour : Convert.ToInt32(hourDec + hourDec); int actuallyMinute = (Convert.ToInt32(minuteDec + minute) == 0) ? dt.Minute : Convert.ToInt32(minuteDec + minute); string dateString = dt.ToShortDateString(); dateString += " "; dateString += actuallyHour.ToString(); dateString += ":"; dateString += actuallyMinute.ToString(); dateString += ":"; dateString += "00"; parameter.CREATEDATE = Convert.ToDateTime(dateString); parameter.RESULT = (paraList.Count(o => o.COLUMNCODE == "RESULT") > 0) ? paraList.First(o => o.COLUMNCODE == "RESULT").PARAVALUE.ToString() : ""; var VARIANT = ((char)Convert.ToInt32(paraList.First(o => o.COLUMNCODE == "VARIANT").PARAVALUE.ToString())).ToString(); //MilingParameterDAL paraDal = new MilingParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } catch (Exception ex) { throw ex; } } /// /// 插入铣削加工参数 /// private void InsertRivetingPatameter() { RivetingPatameter parameter = new RivetingPatameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(RivetingPatameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //RivetingPatameterDAL paraDal = new RivetingPatameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入超声波加工参数 /// private void InsertUltrasParameter() { UltrasParameter parameter = new UltrasParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(UltrasParameter); foreach (ParameterConfig pc in paraList) { try { var columnValue= Convert.ToDecimal(pc.PARAVALUE); if (pc.DEALTYPE == "DIVIDE") { columnValue = columnValue / 10; } PropertyInfo f = t.GetProperty(pc.COLUMNCODE); f.SetValue(parameter, columnValue, null); } catch (Exception ex) { Console.WriteLine(ex.Message); Console.WriteLine(pc.COLUMNCODE); continue; } } //UltrasParameterDAL paraDal = new UltrasParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入红外加工参数 /// private void InsertHotweldParameter() { HotweldParameter parameter = new HotweldParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; if (paraList.Count(o => o.COLUMNCODE == "WELDINGDISTANCEAIRB") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "WELDINGDISTANCEAIRB").PARAVALUE; if (dict != null) { parameter.WELDINGDISTANCEAIRB = Convert.ToInt32(dict); } } if (paraList.Count(o => o.COLUMNCODE == "WELDINGDISTINCTVERT") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "WELDINGDISTINCTVERT").PARAVALUE; if (dict != null) { parameter.WELDINGDISTINCTVERT = Convert.ToInt32(dict); } } if (paraList.Count(o => o.COLUMNCODE == "WELDINGTIME") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "WELDINGTIME").PARAVALUE; if (dict != null) { parameter.WELDINGTIME = Convert.ToInt32(dict); } } if (paraList.Count(o => o.COLUMNCODE == "CHANGEOVERTIME") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "CHANGEOVERTIME").PARAVALUE; if (dict != null) { parameter.CHANGEOVERTIME = Convert.ToInt32(dict); } } if (paraList.Count(o => o.COLUMNCODE == "RESULT") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "RESULT").PARAVALUE; if (dict != null) { parameter.RESULT = dict.ToString(); } } if (paraList.Count(o => o.COLUMNCODE == "HEATINGTIME") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "HEATINGTIME").PARAVALUE; if (dict != null) { parameter.HEATINGTIME = Convert.ToInt32(dict); } } if (paraList.Count(o => o.COLUMNCODE == "CAMERARESULT") > 0) { var dict = paraList.First(o => o.COLUMNCODE == "CAMERARESULT").PARAVALUE; if (dict != null) { parameter.CAMERARESULT = dict.ToString(); } } if (paraList.Count(o => o.COLUMNCODE == "TIMESTAMPHOUR") > 0) { var hourstr = paraList.First(o => o.COLUMNCODE == "TIMESTAMPHOUR").PARAVALUE.ToString(); var minutestr = paraList.First(o => o.COLUMNCODE == "TIMESTAMPMINUTES").PARAVALUE.ToString(); parameter.OPERATETIME = hourstr + ":" + minutestr; } //HotWeldParameterDAL paraDal = new HotWeldParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入总成加工参数 /// private void InsertAssembleParameter() { AssembleParameter parameter = new AssembleParameter(); parameter.PID = Guid.NewGuid().ToString(); parameter.MOID = mainOpe.PID; parameter.PDID = mainOpe.PDID; parameter.PRODUCTTYPE = mainOpe.PRODUCTTYPE; parameter.PRODUCTCODE = mainOpe.PRODUCTCODE; parameter.MACHINECODDE = mainOpe.MACHINECODDE; parameter.MACHINENAME = mainOpe.MACHINENAME; parameter.CREATEDATE = System.DateTime.Now; Type t = typeof(AssembleParameter); foreach (ParameterConfig pc in paraList) { t.GetProperty(pc.COLUMNCODE).SetValue(parameter, pc.PARAVALUE, null); } //AssembleParameterDAL paraDal = new AssembleParameterDAL(); //paraDal.BaseSession = session; //paraDal.Insert(parameter); } /// /// 插入加工参数 /// /// /// public void InsertParameter(ProcessParameters recorder, List parConfigList) { StringBuilder paraValue = new StringBuilder(); try { foreach (var pc in parConfigList) { paraValue.Append(","); paraValue.Append("'" + pc.COLUMNCODE + "':'" + ((pc.PARAVALUE != null) ? pc.PARAVALUE.ToString() : "") + "'"); } recorder.PARM_VAL = ("{" + paraValue.ToString().Substring(1) + "}"); recorder.CREATEDATE = System.DateTime.Now; ProcessParametersDAL ppdal = new ProcessParametersDAL(); ppdal.Insert(recorder); } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = "插入加工参数异常!" }); LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = "PRODUCTID:" + recorder.PRODUCT_PID }); LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = "WORKCELL_CODE:" + recorder.WORKCELL_CODE }); LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = "PARAMETER:" + recorder.PARM_VAL }); } } public void InsertParameter(MainOperation mo, List parConfigList) { var tableName = ""; var sqlStr2 = ""; var sqlStr4 = ""; var sqlStr = ""; var groups = parConfigList.GroupBy(x => x.TABLENAME); try { string paramPID = Guid.NewGuid().ToString(); string createdate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); foreach (var group in groups) { sqlStr2 = ""; sqlStr4 = ""; #region 拼写插入语句 foreach (var pc in group) { if (pc.COLUMNCODE == "TotalCount") { int m = 0; } tableName = pc.TABLENAME; sqlStr2 += "," + pc.COLUMNCODE; if (pc.PARAVALUE == null) { sqlStr4 += ",''"; } else { sqlStr4 += ",'" + pc.PARAVALUE.ToString() + "'"; } } var sqlStr1 = "INSERT INTO [" + tableName + "] (PID,PDID,PRODUCTCODE,MOID,PRODUCTTYPE,MACHINENAME,MACHINECODDE,MOLDNUMBER,CREATEDATE"; sqlStr2 += ") "; var sqlStr3 = "VALUES ('" + paramPID + "','" + mo.PDID + "','" + mo.PRODUCTCODE + "','" + mo.PID + "','" + mo.PRODUCTTYPE + "','" + mo.MACHINENAME + "','" + mo.MACHINECODDE + "','" +mo.MOLDNUMBER+ "','" + createdate + "'"; sqlStr4 += ") "; sqlStr = sqlStr1 + sqlStr2 + sqlStr3 + sqlStr4; #endregion using (IDataSession session = AppDataFactory.CreateMainSession()) { session.ExecuteSql(sqlStr); } } } catch (Exception ex) { LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = "插入加工参数异常!" }); LogManager.LogHelper.Error(new LogInfo() { ErrorInfo = ex, Info = sqlStr }); } } } }