/// <summary> /// 同步历史卸样结果 /// </summary> /// <param name="output"></param> /// <param name="MachineCode"></param> public void SyncUnloadResult(Action <string, eOutputType> output) { int res = 0; res = 0; // 第三方 > 集中管控 foreach (EquHCQSCYJUnloadResult entity in this.EquDber.Entities <EquHCQSCYJUnloadResult>("where DataFlag=0")) { InfBeltSamplerUnloadResult oldUnloadResult = commonDAO.SelfDber.Get <InfBeltSamplerUnloadResult>(entity.Id); if (oldUnloadResult == null) { // 查找采样命令 EquHCQSCYJPlan qCJXCYJSampleCmd = this.EquDber.Entity <EquHCQSCYJPlan>("where SampleCode=@SampleCode", new { SampleCode = entity.SampleCode }); if (qCJXCYJSampleCmd != null) { // 生成采样桶记录 CmcsRCSampleBarrel rCSampleBarrel = new CmcsRCSampleBarrel() { //BarrelCode = entity.BarrelCode, //BarrellingTime = entity.UnloadTime, //BarrelNumber = entity.BarrelNumber, //InFactoryBatchId = qCJXCYJSampleCmd.InFactoryBatchId, //SamplerName = this.MachineCode, //SampleType = eSamplingType.机械采样.ToString(), //SamplingId = entity.SamplingId }; if (commonDAO.SelfDber.Insert(rCSampleBarrel) > 0) { //if (commonDAO.SelfDber.Insert(new InfQCJXCYJUnloadResult //{ // MachineCode = this.MachineCode, // SampleCode = entity.SampleCode, // BarrelCode = entity.BarrelCode, // UnloadTime = entity.UnloadTime, // DataFlag = entity.DataFlag //}) > 0) { entity.DataFlag = 1; this.EquDber.Update(entity); res++; } } } } } output(string.Format("同步卸样结果 {0} 条(第三方 > 集中管控)", res), eOutputType.Normal); }
/// <summary> /// 同步采样计划 /// </summary> /// <param name="output"></param> /// <param name="MachineCode">设备编码</param> public void SyncSamplePlan(Action <string, eOutputType> output) { int res = 0; // 集中管控 > 第三方 foreach (InfBeltSamplePlan entity in BeltSamplerDAO.GetInstance().GetWaitForSyncBeltSamplePlan(this.MachineCode)) { bool isSuccess = false; // 需调整:命令中的水分等信息视接口而定 EquHCQSCYJPlan samplecmdEqu = this.EquDber.Get <EquHCQSCYJPlan>(entity.Id); if (samplecmdEqu == null) { isSuccess = this.EquDber.Insert(new EquHCQSCYJPlan { // 保持相同的Id Id = entity.Id, SampleCode = entity.SampleCode, MachineCode = this.MachineCode, TrainCode = entity.TrainCode, InFactoryBatchId = entity.InFactoryBatchId, TicketWeight = entity.TicketWeight, CarCount = entity.CarCount, Mt = entity.Mt, DataFlag = 0 }) > 0; } else { samplecmdEqu.SampleCode = entity.SampleCode; samplecmdEqu.MachineCode = this.MachineCode; samplecmdEqu.TrainCode = entity.TrainCode; samplecmdEqu.InFactoryBatchId = entity.InFactoryBatchId; samplecmdEqu.TicketWeight = entity.TicketWeight; samplecmdEqu.CarCount = entity.CarCount; samplecmdEqu.Mt = entity.Mt; samplecmdEqu.DataFlag = 0; isSuccess = this.EquDber.Update(samplecmdEqu) > 0; } if (isSuccess) { entity.SyncFlag = 1; Dbers.GetInstance().SelfDber.Update(entity); res++; } } output(string.Format("同步采样计划 {0} 条(集中管控 > 第三方)", res), eOutputType.Normal); res = 0; // 第三方 > 集中管控 foreach (EquHCQSCYJPlan entity in this.EquDber.Entities <EquHCQSCYJPlan>("where DataFlag=2 and datediff(dd,CreateDate,getdate())=0")) { InfBeltSamplePlan samplecmdInf = Dbers.GetInstance().SelfDber.Get <InfBeltSamplePlan>(entity.Id); if (samplecmdInf == null) { continue; } //samplecmdInf.Point1 = entity.Point1; //samplecmdInf.Point2 = entity.Point2; //samplecmdInf.Point3 = entity.Point3; //samplecmdInf.Point4 = entity.Point4; //samplecmdInf.Point5 = entity.Point5; //samplecmdInf.Point6 = entity.Point6; samplecmdInf.StartTime = entity.StartTime; samplecmdInf.EndTime = entity.EndTime; samplecmdInf.SampleUser = entity.SampleUser; if (Dbers.GetInstance().SelfDber.Update(samplecmdInf) > 0) { // 我方已读 entity.DataFlag = 3; this.EquDber.Update(entity); res++; } } output(string.Format("同步采样计划 {0} 条(第三方 > 集中管控)", res), eOutputType.Normal); }