public List <SequenceRequest> GetPatientsForSequence(DateTime startRegTime, DateTime endRegTime) { log.WriteMyLog("收到请求:GetPatientsForSequence" + "\r\n来自:" + this.Context.Request.UserHostAddress + "\r\n入参:" + $"\r\nstartRegTime:" + startRegTime + $"\r\nendRegTime:" + endRegTime); string sqlWhere = " and ( 1=1 "; sqlWhere += $" and convert(datetime,f_sdrq+':00') >= convert(datetime,'{startRegTime}')"; sqlWhere += $" and convert(datetime,f_sdrq+':00') <= convert(datetime,'{endRegTime}')"; sqlWhere += " ) "; sqlWhere += $" and f_blk='二代测序' "; sqlWhere += $" and f_bgzt<>'已审核' "; var lstJcxx = (new T_JCXX_DAL()).GetBySqlWhere(sqlWhere); var lstSr = new List <SequenceRequest>(); foreach (T_JCXX jcxx in lstJcxx) { var sr = new SequenceRequest(); sr.PatientId = jcxx.F_BRBH; sr.Name = jcxx.F_XM; sr.Gender = jcxx.F_XB; sr.PathNo = jcxx.F_BLH; sr.RegTime = Convert.ToDateTime(jcxx.F_SDRQ + ":00"); sr.TestItemName = jcxx.F_YZXM; lstSr.Add(sr); } return(lstSr); }
//********************************************************************* /// /// <summary> /// This method returns a ScriptJob type /// </summary> /// <param name="scriptJob"></param> /// <param name="wapSubscriptionId"></param> /// <returns>ScriptJob</returns> /// //********************************************************************* public static ScriptJob SubmitScriptJob(ScriptJob scriptJob, string wapSubscriptionId) { if (scriptJob == null) { throw new ArgumentNullException("scriptJob"); } if (wapSubscriptionId == null) { throw new ArgumentNullException("wapSubscriptionId"); } try { var seqSpec = Convert(scriptJob); seqSpec = CmpClient.CmpScriptClient.ExecuteSmaScript(seqSpec); var sequenceRequest = new SequenceRequest { Active = true, CmpRequestID = 0, Config = seqSpec.Serialize(), ExceptionMessage = null, Id = 0, LastStatusUpdate = seqSpec.RunResult.LastUpdate, ServiceProviderJobId = seqSpec.RunResult.JobId, ServiceProviderName = seqSpec.SmaConfig.SmaServerUrl, ServiceProviderTypeCode = seqSpec.Engine, StatusCode = seqSpec.RunResult.StatusCode, StatusMessage = seqSpec.RunResult.StatusMessage, TagData = seqSpec.TagData, TagID = 0, TagOpName = seqSpec.SmaConfig.RunbookName, TargetName = scriptJob.TargetName, TargetTypeCode = scriptJob.TargetTypeCode, WapSubscriptionID = wapSubscriptionId, Warnings = null, WhenRequested = seqSpec.RunResult.WhenSubmitted, WhoRequested = null }; var cdb = new CmpWapDb(); sequenceRequest = cdb.InsertSequenceRequest(sequenceRequest); seqSpec.ID = sequenceRequest.Id; return(Convert(seqSpec)); } catch (Exception ex) { throw new Exception("ScriptInterface.SubmitScriptJob() : " + Utilities.UnwindExceptionMessages(ex)); } }
//********************************************************************* /// /// <summary> /// This method is used to return ScriptJob type /// </summary> /// <param name="sequenceReq"></param> /// <returns>ScriptJob</returns> /// //********************************************************************* private static ScriptJob Convert(SequenceRequest sequenceReq) { try { var ss = Convert(SequenceSpec.Deserialize(sequenceReq.Config)); return(ss); } catch (Exception ex) { throw new Exception("Exception in ScriptInterface.Convert() : " + CmpInterfaceModel.Utilities.UnwindExceptionMessages(ex)); } }