示例#1
0
 public IHttpActionResult DeleteDataItemDetails(params Guid[] Ids) => Json(DataItemService.TryCatchAction(
                                                                               action: m =>
 {
     Ids.CheckNotNullOrEmpty("Ids");
     var cacheUser = GetCacheUser;
     return(m.DeleteDataItemDetails(cacheUser, Ids));
 }));
示例#2
0
 public void OnViewTransactionDetailClick(object source, CommandEventArgs e)
 {
     if (e.CommandArgument != null)
     {
         string transactionId = DataItemService.GetTransactionIdFromActivityId(e.CommandArgument.ToString());
         if (!string.IsNullOrEmpty(transactionId))
         {
             ResponseRedirect("../Secure/Transaction.aspx?" + Transaction.BACK_PAGE_PARAM + "=Schedule.aspx&id=" + transactionId);
         }
     }
 }
示例#3
0
        protected void CollapseAllLinkButton_Click(object sender, EventArgs e)
        {
            IDictionary <string, string> flows = DataItemService.GetExchangeList(VisitHelper.GetVisit(), false);

            SessionStateData.HiddenSchedules.Clear();
            CollectionUtils.ForEach(flows, delegate(KeyValuePair <string, string> pair)
            {
                SessionStateData.HiddenSchedules.Add(pair.Key);
            });
            UserSettingsManager.SaveAdminSchedulePageHiddenScheduleIds(GetCurrentUsername(), SessionStateData.HiddenSchedules);
            NeedsRebind = true;
        }
示例#4
0
        public IHttpActionResult GetDataItemDetailById(Guid Id) => Json(DataItemService.TryCatchAction(
                                                                            action: m =>
        {
            var cacheUser = GetCacheUser;

            var queryable1 = from a in m.DataItemDetailQueryable
                             join b in m.DataItemQueryable
                             on a.DataItem_Id equals b.Id
                             where a.DataItem_Id == Id && (a.Organzie_Id == null || ListOrganizeId.Contains(a.Organzie_Id.Value)) && b.IsPublic == true
                             select new
            {
                Id           = a.Id,
                FullName     = a.FullName,
                QueryCoding  = a.QueryCoding,
                IsLocked     = a.IsLocked,
                IsPublic     = a.IsPublic,
                Remark       = a.Remark,
                CreatedTime  = a.CreatedTime,
                Index        = a.Index,
                IsSystem     = a.IsSystem,
                OrganizeName = a.OrganizeOne.FullName
            };
            if (cacheUser.IsAdministrator)
            {
                queryable1 = m.DataItemDetailQueryable.Where(b => b.DataItem_Id == Id)
                             .Select(a => new
                {
                    Id           = a.Id,
                    FullName     = a.FullName,
                    QueryCoding  = a.QueryCoding,
                    IsLocked     = a.IsLocked,
                    IsPublic     = a.IsPublic,
                    Remark       = a.Remark,
                    CreatedTime  = a.CreatedTime,
                    Index        = a.Index,
                    IsSystem     = a.IsSystem,
                    OrganizeName = a.OrganizeOne.FullName
                });
            }

            var result = queryable1.ToArray();
            return(new OperationResult(OperationResultType.Success, "获取结果成功", result));
        }));
示例#5
0
 protected void ShowHideLastRunInfo(HtmlTableRow lastRunTextRow, bool?doHide)
 {
     if (lastRunTextRow != null)
     {
         Label       infoLabel       = lastRunTextRow.FindControl("infoTextLabel") as Label;
         HiddenField activityIdField = lastRunTextRow.FindControl("activityIdField") as HiddenField;
         if (doHide == null)
         {
             lastRunTextRow.Visible = !lastRunTextRow.Visible;
         }
         else
         {
             lastRunTextRow.Visible = !doHide.Value;
         }
         string     text    = string.Empty;
         LinkButton control = lastRunTextRow.Parent.FindControl("lastRunInfoButton") as LinkButton;
         if (lastRunTextRow.Visible)
         {
             control.Text = "Hide Last Run Info <<";
             if ((infoLabel != null) && (activityIdField != null) &&
                 !string.IsNullOrEmpty(activityIdField.Value))
             {
                 ScheduledItemExecuteInfo scheduledItemExecuteInfo =
                     DataItemService.GetScheduleLastExecuteInfo(activityIdField.Value);
                 if ((scheduledItemExecuteInfo != null) &&
                     !string.IsNullOrEmpty(scheduledItemExecuteInfo.Summary))
                 {
                     string details = StringUtils.BreakUpText(scheduledItemExecuteInfo.Summary, 80, "\r\n");
                     details = HttpUtility.HtmlEncode(details);
                     text    = details.Replace("\r\n", "<br/><br/>");
                 }
             }
         }
         else
         {
             control.Text = "Show Last Run Info >>";
         }
         if (infoLabel != null)
         {
             infoLabel.Text = text;
         }
     }
 }
示例#6
0
        protected override void InitializeModel()
        {
            base.InitializeModel();

            if (DataItemService == null)
            {
                throw new ArgumentNullException("DataItemService");
            }
            if (UserSettingsManager == null)
            {
                throw new ArgumentNullException("Missing UserSettingsManager");
            }

            _modelState = new PageModelState();

            IList <ScheduledItem> scheduledItems = DataItemService.GetSchedules(VisitHelper.GetVisit());

            if (!CollectionUtils.IsNullOrEmpty(scheduledItems))
            {
                IDictionary <string, string> flows = DataItemService.GetExchangeList(VisitHelper.GetVisit(), false);
                _modelState.FlowToScheduledItems = new Dictionary <string, Dictionary <string, ScheduledItem> >();
                _modelState.Flows          = new Dictionary <string, string>();
                _modelState.ScheduledItems = new Dictionary <string, ScheduledItem>();
                foreach (ScheduledItem scheduledItem in scheduledItems)
                {
                    Dictionary <string, ScheduledItem> scheduledItemList;
                    if (!_modelState.FlowToScheduledItems.TryGetValue(scheduledItem.FlowId, out scheduledItemList))
                    {
                        scheduledItemList = new Dictionary <string, ScheduledItem>();
                        _modelState.FlowToScheduledItems.Add(scheduledItem.FlowId, scheduledItemList);
                    }
                    scheduledItemList.Add(scheduledItem.Id, scheduledItem);
                    _modelState.ScheduledItems.Add(scheduledItem.Id, scheduledItem);
                    if (!_modelState.Flows.ContainsKey(scheduledItem.FlowId))
                    {
                        string flowName = flows[scheduledItem.FlowId];
                        _modelState.Flows.Add(scheduledItem.FlowId, flowName);
                    }
                }
            }
        }
示例#7
0
        protected void UpdateStatusOfScheduledItemsInModel()
        {
            if (CollectionUtils.IsNullOrEmpty(_modelState.ScheduledItems))
            {
                return;
            }
            IList <ScheduledItemExecuteStatus> scheduleStatusList =
                DataItemService.GetScheduledItemExecuteStatus(VisitHelper.GetVisit());

            CollectionUtils.ForEach(scheduleStatusList, delegate(ScheduledItemExecuteStatus scheduledItemExecuteStatus)
            {
                ScheduledItem scheduledItem;
                if (_modelState.ScheduledItems.TryGetValue(scheduledItemExecuteStatus.Id, out scheduledItem))
                {
                    scheduledItem.ExecuteStatus         = scheduledItemExecuteStatus.ExecuteStatus;
                    scheduledItem.LastExecuteActivityId = scheduledItemExecuteStatus.LastExecuteActivityId;
                    scheduledItem.LastExecutedOn        = scheduledItemExecuteStatus.LastExecutedOn;
                    scheduledItem.NextRunOn             = scheduledItemExecuteStatus.NextRunOn;
                }
            });
        }
示例#8
0
 public void OnRunNowClick(object source, CommandEventArgs e)
 {
     try
     {
         Control control = source as Control;
         if (control != null)
         {
             HtmlTableRow tableRow = control.Parent.FindControl("lastRunTextRow") as HtmlTableRow;
             ShowHideLastRunInfo(tableRow, true);
         }
         DataItemService.RunNow(e.CommandArgument.ToString(), VisitHelper.GetVisit());
         if (ScheduleProcessor != null)
         {
             ScheduleProcessor.Wakeup();
         }
     }
     catch (Exception ex)
     {
         LOG.Error(ex.Message, ex);
         divPageError.Visible   = true;
         divPageError.InnerText = ExceptionUtils.GetDeepExceptionMessage(ex);
     }
 }
示例#9
0
        public IHttpActionResult GetAppointType(string EnQuerying) => Json(DataItemService.TryCatchAction(
                                                                               action: m =>
        {
            EnQuerying.CheckNotNullOrEmpty("EnQuerying");

            string unQuerying = EnQuerying.AESDecrypt();

            var cacheUser = GetCacheUser;

            var queryable1 = from a in m.DataItemDetailQueryable
                             where a.QueryCoding == unQuerying &&
                             (a.Organzie_Id == null || ListOrganizeId.Contains(a.Organzie_Id.Value)) &&
                             a.IsLocked == false
                             orderby a.Index ascending
                             select new { Id = a.Id, FullName = a.FullName, Index = a.Index };

            if (cacheUser.IsAdministrator)
            {
                queryable1 = m.DataItemDetailQueryable.Where(b => b.QueryCoding == unQuerying && b.IsPublic == true && b.IsLocked == false)
                             .Select(a => new { Id = a.Id, FullName = a.FullName, Index = a.Index });
            }
            var result = queryable1.ToArray();
            return(new OperationResult(OperationResultType.Success, "获取结果成功", result));
        }));
示例#10
0
 public IHttpActionResult DeleteDataItems([FromBody] params Guid[] Ids) => Json(DataItemService.TryCatchAction(
                                                                                    action: m =>
 {
     Ids.CheckNotNullOrEmpty("Ids");
     if (!GetCacheUser.IsAdministrator)
     {
         throw new Exception($"id:你的权限不足,只有系统管理员才能进行此项操作!");
     }
     return(m.DeleteDataItems(Ids));
 }));
示例#11
0
 public IHttpActionResult AddDataItems([FromBody] params DataItemInputDto[] datas) => Json(DataItemService.TryCatchAction(
                                                                                               action: m =>
 {
     datas.CheckNotNullOrEmpty("datas");
     if (!GetCacheUser.IsAdministrator)
     {
         throw new Exception($"id:你的权限不足,只有系统管理员才能进行此项操作!");
     }
     return(m.AddDataItems(datas));
 }));
示例#12
0
        public IHttpActionResult GetDataItems([FromBody] GridRequestsModel grid) => Json(DataItemService.TryCatchAction(
                                                                                             action: m =>
        {
            grid.CheckNotNull("grid");
            var cacheUser = GetCacheUser;    //获取缓存判断

            if (!cacheUser.Level.IsBetween(1, 2))
            {
                throw new Exception("id:你没有权限进行此项操作!");
            }

            //查询条件
            GridRequests request = new GridRequests(grid);
            //添加默认排序,只有排序未设置的情况下生效
            request.AddDefaultSortCondition(new SortCondition("CreatedTime", ListSortDirection.Descending));

            // 查询所有公开的数据字典目录
            var queryable1 = m.DataItemQueryable.Where(a => a.IsPublic == true);
            // 系统管理员可以查询全部
            if (cacheUser.IsAdministrator)
            {
                queryable1 = m.DataItemQueryable;
            }

            Expression <Func <DataItem, bool> > predicate = FilterHelper.GetExpression <DataItem>(request.FilterGroup);

            var data = queryable1.ToPage <DataItem, DataItemPageOutDto>(predicate, request.PageCondition);
            return(new OperationResult(OperationResultType.Success, "操作成功", data));
        }));
示例#13
0
 public IHttpActionResult AddDataItemDetails([FromBody] params DataItemDetailInputDto[] datas) => Json(DataItemService.TryCatchAction(
                                                                                                           action: m =>
 {
     datas.CheckNotNullOrEmpty("datas");
     var cacheUser = GetCacheUser;
     if (!cacheUser.Level.IsBetween(1, 2))
     {
         throw new Exception($"id:你的权限不足,不能进行此项操作!");
     }
     return(m.AddDataItemDetails(cacheUser, datas));
 }));