示例#1
0
        /// <summary> </summary>
        protected override void DoWork(CodeActivityContext context)
        {
            Success.Set(context, true);

            var obrId = ObrId.Get(context);
            var dataItemThresholds = DataItemThresholds.Get(context);

            if (dataItemThresholds == null)
            {
                return;
            }

            ObsDef obsDefEntity = ObsDef.GetEntityByObdGuid(dataItemThresholds.ObdGuid, PM);

            if (obsDefEntity.IsNullEntity)
            {
                return;
            }

            var query = new EntityQuery(typeof(ObsReq));

            query.AddClause(ObsReqDataRow.OBR_IDEntityColumn, EntityQueryOp.EQ, obrId);
            var obsReqEntity = PM.GetEntity <ObsReq>(query);

            if (obsReqEntity.IsNullEntity)
            {
                return;
            }

            query = new EntityQuery(typeof(Observe));
            query.AddClause(ObserveDataRow.OBD_IDEntityColumn, EntityQueryOp.EQ, obsDefEntity.OBD_ID);
            query.AddClause(ObserveDataRow.Pat_ID1EntityColumn, EntityQueryOp.EQ, obsReqEntity.Pat_ID1);
            query.AddClause(ObserveDataRow.OBR_SET_IDEntityColumn, EntityQueryOp.EQ, obsReqEntity.OBR_Set_ID);
            var observeEntity = PM.GetEntity <Observe>(query);

            if (observeEntity.IsNullEntity)
            {
                return;
            }

            var success = CommonCharting.CheckDataItemThresholds(observeEntity, dataItemThresholds);

            Success.Set(context, success);
        }