using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using HH.WCS.Mobox3.DSZSH.AppStart; using HH.WCS.Mobox3.DSZSH.Helpers; using HH.WCS.Mobox3.DSZSH.Models; using Newtonsoft.Json; using static HH.WCS.Mobox3.DSZSH.Dtos.Request.WmsRequest; using static HH.WCS.Mobox3.DSZSH.Dtos.Response.WmsResponse; namespace HH.WCS.Mobox3.DSZSH.Services { public class WmsService { /// /// 博实物料信息下发同步 /// /// /// public static WmsResult CgInfoSync(CgInfoSyncInfo model) { var db = DbHelper.GetDbClient(); var random = new Random(); try { var detail = new TN_CG_Detail { S_ITEM_CODE = model.ItemCode, S_ITEM_NAME = model.ItemName, S_CNTR_CODE = Guid.NewGuid().ToString("D"), // NOTE 容器号:目前随机(后期可能会指定,或者PDA绑定时再填入) S_BATCH_NO = model.BatchNo, S_STANDARD = model.Standard, S_NET_WEIGHT = model.NetWeight, S_QUALITY_GRADE = model.QualityGrade, N_PRODUCT_LINE = random.Next(0, 3), // NOTE 产线号:目前随机(后期可能会指定,或者PDA绑定时再填入) }; // 货位容器绑定的逻辑,在好运箱下线PDA的流程中操作 //var locCntrRel = new TN_Loc_Container { // //S_LOC_CODE = Settings.Config.ProductionLines[detail.N_PRODUCT_LINE].OffLoc[0], // 好运箱的位置是操作区,不是产线 // S_CNTR_CODE = detail.S_CNTR_CODE, // S_CNTR_TYPE = "好运箱", // 贴标机只针对好运箱 //}; //using (var tran = db.Ado.UseTran()) { // if (db.Insertable(detail).ExecuteCommand() <= 0 // && db.Insertable(detail).ExecuteCommand() <= 0) { // tran.RollbackTran(); // return MesResultBuilder(2, "插入物料信息失败:" + JsonConvert.SerializeObject(detail)); // } // tran.CommitTran(); //} if (db.Insertable(detail).ExecuteCommand() <= 0) { return MesResultBuilder(2, "插入物料信息失败:" + JsonConvert.SerializeObject(detail)); } return MesResultBuilder(0, "插入物料信息成功"); } catch (Exception ex) { return MesResultBuilder(1, ex.Message); } } } }