| | |
| | | try |
| | | { |
| | | db.BeginTran(); |
| | | itemBarcodeInfos.ForEach(a => { |
| | | var bo = db.Insertable<ItemBarcodeInfo>(a).ExecuteCommand() > 0; |
| | | if (!bo) |
| | | itemBarcodeInfos.ForEach(item => { |
| | | var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == item.S_BC_ENTRIED).First(); |
| | | if (itemBarcodeInfo == null) |
| | | { |
| | | result = false; |
| | | LogHelper.Info($"添加物料条码信息失败,物料条码信息:{JsonConvert.SerializeObject(a)}", "GT"); |
| | | var bo = db.Insertable<ItemBarcodeInfo>(item).ExecuteCommand() > 0; |
| | | if (!bo) |
| | | { |
| | | result = false; |
| | | LogHelper.Info($"添加物料条码信息失败,物料条码信息:{JsonConvert.SerializeObject(item)}", "GT"); |
| | | } |
| | | } |
| | | }); |
| | | if (result) |
| | |
| | | { |
| | | db.BeginTran(); |
| | | updateMatlStatuses.ForEach(update => { |
| | | var bo = db.Updateable<CntrItemRel>().SetColumns(a => new CntrItemRel() { S_ITEM_STATE = update.jdge }).Where(a => a.S_CG_ID == update.bc_entried).ExecuteCommand() > 0; |
| | | if (!bo) |
| | | var itemBarcodeInfo = db.Queryable<ItemBarcodeInfo>().Where(a => a.S_BC_ENTRIED == update.bc_entried).First(); |
| | | if (itemBarcodeInfo != null) |
| | | { |
| | | result = false; |
| | | LogHelper.Info($"批量更新物料状态失败,物料条码信息:{JsonConvert.SerializeObject(update)}", "GT"); |
| | | itemBarcodeInfo.S_JDGE = update.jdge; |
| | | db.Updateable(itemBarcodeInfo).ExecuteCommand(); |
| | | var cntrItemRel = db.Queryable<CntrItemRel>().Where(a => a.S_CG_ID == update.bc_entried).First(); |
| | | if (cntrItemRel != null) |
| | | { |
| | | // 将MES的物料状态转化成WMS可识别的物料状态 |
| | | if (update.jdge == "" || update.jdge == null) |
| | | { |
| | | update.jdge = "OK"; |
| | | } |
| | | else if (update.jdge != "OK") |
| | | { |
| | | update.jdge = "HOLD"; |
| | | } |
| | | db.Updateable<CntrItemRel>().SetColumns(a => new CntrItemRel() { S_ITEM_STATE = update.jdge }).Where(a => a.S_CG_ID == update.bc_entried).ExecuteCommand(); |
| | | } |
| | | } |
| | | }); |
| | | if (result) |
| | | { |
| | | db.CommitTran(); |
| | | } |
| | | else |
| | | { |
| | | db.RollbackTran(); |
| | | } |
| | | db.CommitTran(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Info($"批量更新物料状态错误,错误信息:{ex.Message}", "GT"); |
| | | db.RollbackTran(); |
| | | result = false; |
| | | } |
| | | return result; |
| | | } |
| | |
| | | db.BeginTran(); |
| | | foreach (Overage overage in overages) |
| | | { |
| | | bool bo = false; |
| | | var overage1 = db.Queryable<Overage>().Where(a => a.MCNGRP == overage.MCNGRP && a.ITEMPATT == overage.ITEMPATT).First(); |
| | | var overage1 = db.Queryable<Overage>().Where(a => a.RECID == overage.RECID).First(); |
| | | if (overage1 != null) |
| | | { |
| | | overage1.MCNGRP = overage.MCNGRP; |
| | | overage1.ITEMPATT = overage.ITEMPATT; |
| | | overage1.OVERAGE = overage.OVERAGE; |
| | | overage1.MINHOUR = overage.MINHOUR; |
| | | overage1.FLAG_STS = overage.FLAG_STS; |
| | | bo = db.Updateable(overage1).ExecuteCommand() > 0; |
| | | db.Updateable(overage1).ExecuteCommand(); |
| | | } |
| | | else |
| | | { |
| | | overage1 = new Overage() |
| | | { |
| | | MCNGRP = overage.MCNGRP, |
| | | ITEMPATT = overage.ITEMPATT, |
| | | OVERAGE = overage.OVERAGE, |
| | | MINHOUR = overage.MINHOUR, |
| | | FLAG_STS = overage.FLAG_STS |
| | | }; |
| | | bo = db.Insertable(overage1).ExecuteCommand() > 0; |
| | | } |
| | | if (!bo) |
| | | { |
| | | result = false; |
| | | LogHelper.Info($"批量更新物料存放时间配置信息失败,配置信息:{JsonConvert.SerializeObject(overage)}", "GT"); |
| | | break; |
| | | db.Insertable(overage).ExecuteCommand(); |
| | | } |
| | | } |
| | | |
| | | if (result) |
| | | { |
| | | db.CommitTran(); |
| | | } |
| | | else |
| | | { |
| | | db.RollbackTran(); |
| | | } |
| | | db.CommitTran(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Info($"批量更新物料存放时间配置信息错误,错误信息:{ex.Message}", "GT"); |
| | | db.RollbackTran(); |
| | | result = false; |
| | | } |
| | | return result; |
| | | } |
| | |
| | | /// <returns></returns> |
| | | public static Overage getOverage(string bc_entried) |
| | | { |
| | | Overage overage = null; |
| | | |
| | | var db = new SqlHelper<object>().GetInstance(); |
| | | overage = db.Queryable<Overage>().Where(a => a.ITEMPATT == bc_entried && a.MCNGRP == "1").First(); |
| | | |
| | | if (overage == null) |
| | | { |
| | | string sub = bc_entried.Substring(0, 3); |
| | | overage = db.Queryable<Overage>().Where(a => a.ITEMPATT.Contains(sub) && a.MCNGRP == "1").First(); |
| | | } |
| | | // 直接执行 SQL(参数化查询) |
| | | var sql = "SELECT get_ovg_bar(@barcode, @mcngrp) AS overage_value"; |
| | | var sql1 = "SELECT get_minhour_bar(@barcode, @mcngrp) AS overage_value"; |
| | | |
| | | if (overage == null) |
| | | // 使用匿名对象传递参数 |
| | | var ovg_bar = db.Ado.SqlQuery<int>(sql, new { barcode = bc_entried, mcngrp = "1"}); |
| | | var minhour_bar = db.Ado.SqlQuery<float>(sql1, new { barcode = bc_entried, mcngrp = "1"}); |
| | | if (ovg_bar.Count > 0 && minhour_bar.Count > 0) |
| | | { |
| | | string sub = bc_entried.Substring(0, 7); |
| | | overage = db.Queryable<Overage>().Where(a => a.ITEMPATT.Contains(sub) && a.MCNGRP == "1").First(); |
| | | Overage overage = new Overage() |
| | | { |
| | | MINHOUR = minhour_bar[0], |
| | | OVERAGE = ovg_bar[0] |
| | | }; |
| | | return overage; |
| | | } |
| | | return overage; |
| | | return null; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | try |
| | | { |
| | | db.BeginTran(); |
| | | result = db.Insertable(record).ExecuteCommand()> 0; |
| | | var synDataTimeRecord = db.Queryable<SynDataTimeRecord>().Where(a => a.S_SYN_TIME == record.S_SYN_TIME && a.RECORD_TABLE == record.RECORD_TABLE).First(); |
| | | if (synDataTimeRecord == null) |
| | | { |
| | | result = db.Insertable(record).ExecuteCommand() > 0; |
| | | } |
| | | else |
| | | { |
| | | synDataTimeRecord.N_SYN_NUM = record.N_SYN_NUM; |
| | | synDataTimeRecord.S_SYN_TIME = record.S_SYN_TIME; |
| | | result = db.Updateable(synDataTimeRecord).ExecuteCommand() > 0; |
| | | } |
| | | |
| | | if (result) |
| | | { |
| | | db.CommitTran(); |
| | |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | LogHelper.Info($"添加同步数据时间记录错误,错误信息:{ex.Message}", "GT"); |
| | | LogHelper.Info($"添加数据同步时间记录错误,错误信息:{ex.Message}", "GT"); |
| | | db.RollbackTran(); |
| | | } |
| | | return result; |