示例#1
0
        public ModSicConnection CreateModSicServiceToSendCollectAndWaitItsCompletion()
        {
            var fakeRequestInfo       = CreateRequestInfo(Guid.NewGuid().ToString(), FAKE_COLLECT_REQUEST_ID);
            var fakeSendCollectResult = new SendRequestResult()
            {
                Requests = new RequestInfo[] { fakeRequestInfo }
            };

            var fakeCollectInfo0           = CreateCollectInfo("10.1.0.1", "CollectRequests/1");
            var fakeCollectInfo1           = CreateCollectInfo("10.1.1.1", FAKE_COLLECT_REQUEST_ID);
            var fakeCollectInfo2           = CreateCollectInfo("10.1.1.2", "CollectRequests/1025");
            var fakeCollectionsInExecution = new CollectInfo[] { fakeCollectInfo0, fakeCollectInfo1, fakeCollectInfo2 };

            var mocks = new MockRepository();
            var api   = mocks.StrictMock <ModSicConnection>(new string[] { "", "", "", "" });

            Expect.Call(api.SendCollect(null, null, null, null, null)).IgnoreArguments().Return(fakeSendCollectResult);
            Expect.Call(api.GetCollectionsInExecution()).Repeat.Times(5).Return(fakeCollectionsInExecution);
            Expect.Call(api.GetCollectionsInExecution()).Return(new CollectInfo[] { fakeCollectInfo2 });
            Expect.Call(api.GetOvalResults(FAKE_COLLECT_REQUEST_ID)).Return(FAKE_OVAL_RESULTS);
            mocks.ReplayAll();

            return(api);
        }
        public CollectExecutionManager CreateExecutionManagerWithCannotConnectToHostExceptionScenario(
            ProbeResult resultForRegistry, ProbeResult resultForFamily, bool exceptionOnSystemInformationGathering = false)
        {
            MockRepository mocks = new MockRepository();

            probeManager = mocks.DynamicMock <IProbeManager>();
            probe        = mocks.DynamicMock <IProbe>();
            familyProbe  = mocks.DynamicMock <IProbe>();
            dataProvider = mocks.DynamicMock <IDataProvider>();


            var         fakeCannotConnectException = new CannotConnectToHostException(target, "Cannot Connection To Host...");
            CollectInfo collectInfo = new CollectInfo()
            {
                ObjectTypes = ovalObjects
            };

            Expect.Call(probeManager.GetProbesFor(null, FamilyEnumeration.windows)).Repeat.Any().IgnoreArguments().Return(GetSelectedProbes());
            Expect.Call(probe.Execute(connectionContext, target, collectInfo)).IgnoreArguments().Throw(fakeCannotConnectException);
            Expect.Call(familyProbe.Execute(connectionContext, target, collectInfo)).IgnoreArguments().Return(resultForFamily);
            Expect.Call(dataProvider.GetSession()).Repeat.Any().Return(session);
            Expect.Call(dataProvider.GetTransaction(session)).Repeat.Any().Return(new Transaction(session));
            if (exceptionOnSystemInformationGathering)
            {
                systemInformationService = mocks.DynamicMock <ISystemInformationService>();
                Expect.Call(probeManager.GetSystemInformationService(FamilyEnumeration.windows)).IgnoreArguments().Return(systemInformationService);
                Expect.Call(systemInformationService.GetSystemInformationFrom(null)).IgnoreArguments().Throw(fakeCannotConnectException);
            }

            mocks.ReplayAll();

            return(new CollectExecutionManager(probeManager)
            {
                Target = target, connectionContext = connectionContext
            });
        }
    public BoolWithPrimaryKeyView Collect(string publishID)
    {
        CollectInfo tempCollectInfo = ((CollectInfoDao)IcollectInfo).GetUserCollectInfo(new MyCommunityBehaviorView()
        {
            PublishID = publishID
        });
        bool   operResult = false;
        string operID     = string.Empty;

        if (tempCollectInfo == null)
        {
            CollectInfo collectInfo = new CollectInfo()
            {
                ID            = Guid.NewGuid().ToString(),
                CollectorID   = this.UserID,
                CollectorName = this.UserName,
                CollectTime   = DateTime.Now,
                PublishID     = publishID,
                CollectValid  = ((int)MiicValidTypeSetting.Valid).ToString()
            };
            operID     = collectInfo.ID;
            operResult = IcollectInfo.Insert(collectInfo);
        }
        else
        {
            operResult = IcollectInfo.Delete(tempCollectInfo.ID);
        }

        BoolWithPrimaryKeyView result = new BoolWithPrimaryKeyView()
        {
            PrimaryID = operID,
            result    = operResult
        };

        return(result);
    }
示例#4
0
        /// <summary>
        /// Return the collectRequest in execution on scheduler
        /// </summary>
        /// <returns></returns>
        public IEnumerable <CollectInfo> GetCollectRequestsInExecution(string clientId = null)
        {
            var collectInfos = new List <CollectInfo>();
            // var collectRequestIds = this.ScheduleController.GetCollectRequestIdRunning();
            var collectRequestIds = this.ScheduleController.GetCollectRequestIdList();

            if (collectRequestIds != null)
            {
                using (var session = Repository.GetSession())
                {
                    foreach (var id in collectRequestIds)
                    {
                        CollectRequest collectRequest = Repository.GetCollectRequest(session, id.Key);
                        CollectInfo    collectInfo    = CollectAssembler.CreateCollectInfoFromCollectRequest(collectRequest);
                        collectInfo.StartTime = id.Value;
                        if (String.IsNullOrEmpty(clientId) || String.IsNullOrEmpty(collectInfo.ClientId) || collectInfo.ClientId == clientId)
                        {
                            collectInfos.Add(collectInfo);
                        }
                    }
                }
            }
            return(collectInfos);
        }
示例#5
0
        /// <summary>
        /// Executes a normal collect, using the system datasource for data collecting.
        /// </summary>
        /// <param name="ovalComponent">The oval component.</param>
        /// <param name="collectInfo">The collect info.</param>
        /// <param name="id">The id parameter is 'a sequencial number controlled by external scope.</param>
        /// <returns></returns>
        private CollectedObject ProcessCollect(Definitions.ObjectType ovalComponent, CollectInfo collectInfo, ProbeResultBuilder probeResultBuilder, ref int id)
        {
            CollectedObject collectedObject   = null;
            var             allItemsToCollect = this.TryToGetItemsToCollect(ovalComponent, collectInfo.Variables);

            if (allItemsToCollect.Count() > 0)
            {
                collectedObject = new CollectedObject(ovalComponent.id);
                foreach (var itemToCollect in allItemsToCollect)
                {
                    var collectedItems = ObjectCollector.CollectDataForSystemItem(itemToCollect);
                    foreach (var collectedItem in collectedItems)
                    {
                        var itemType = probeResultBuilder.GetItemType(collectedItem.ItemType);
                        if (itemType == null)
                        {
                            collectedItem.ItemType.id = id.ToString();
                            id++;
                        }
                        else
                        {
                            collectedItem.ItemType = itemType;
                        }

                        collectedObject.AddItemToSystemData(collectedItem.ItemType);
                        var variables = collectInfo.GetVariableValueForOvalComponent(collectedObject.ObjectType.id);
                        collectedObject.AddVariableReference(variables);
                        ExecutionLogBuilder.AddDetailInformation(collectedItem.ExecutionLog);
                    }
                }

                collectedObject.UpdateCollectedObjectStatus();
            }

            return(collectedObject);
        }
示例#6
0
        public void Should_be_possible_to_execute_a_simple_file_collect()
        {
            // Arrange
            file_item   fakeFileItem    = this.CreateFakeFileItem("c:\\windows\\ODBC.ini", null, null);
            CollectInfo fakeCollectInfo = this.getFakeCollectInfo("definitionsWithOnlyObjects.xml");
            FileProber  fileProber      = this.GetMockedFileProber(fakeFileItem);

            // Act
            ProbeResult collectResult = fileProber.Execute(fakeContext, fakeTargetInfo, fakeCollectInfo);

            // Assert
            Assert.IsNotNull(collectResult, "The result of probe execution cannot be null.");
            Assert.IsNotNull(collectResult.CollectedObjects, "There are no collected objects.");
            Assert.AreEqual(2, collectResult.CollectedObjects.Count(), "Unexpected quantity of collected objects");

            CollectedObject fileObjectToAssert = collectResult.CollectedObjects.ElementAt(0);

            Assert.IsNotNull(fileObjectToAssert.ObjectType, "The first collected object cannot null.");
            Assert.AreEqual("oval:modulo:obj:9000", fileObjectToAssert.ObjectType.id, "The identificator of [collected object] and [definitions object] must be equal.");
            Assert.AreEqual(FlagEnumeration.complete, fileObjectToAssert.ObjectType.flag, "A successfully gathering must generate a collected object with flag equal to 'complete'.");
            Assert.IsNotNull(fileObjectToAssert.ObjectType.reference, "A successfully gathering must generate at least one item referenced");
            Assert.AreEqual(1, fileObjectToAssert.ObjectType.reference.Count(), "Unexpected number of generated items for this object collected");
            Assert.AreEqual(fileObjectToAssert.SystemData.Count(), fileObjectToAssert.ObjectType.reference.Count(), "The number of referenced items in collected object should be equal to generated items quantity.");
        }
示例#7
0
 /// <summary>
 /// Collects the information for variableProbes. The variable prober not needs a real systemDataSource.
 /// The SystemDataSource implementation for this prober, is only for compatibility with the architecture.
 /// Because this, is necessary configure a systemDataSource with the set of variables for the creation of
 /// Items.
 /// </summary>
 /// <param name="collectInfo">The collect info.</param>
 /// <returns></returns>
 protected override ProbeResultBuilder CollectInformation(CollectInfo collectInfo)
 {
     ((VariableObjectCollector)this.ObjectCollector).VariableEvaluated = collectInfo.Variables;
     return(base.CollectInformation(collectInfo));
 }
 /// <summary>
 /// 设置绑定到当前线程上下文的 CollectInfo
 /// </summary>
 /// <returns></returns>
 public static void SetCollectInfo(CollectInfo collectInfo)
 {
     CallContext.SetData(KEY_COLLECT_INFO, collectInfo);
 }
示例#9
0
        /// <summary>
        /// 开始采集
        /// </summary>
        /// <param name="cancellationToken"></param>
        /// <param name="collectInfo"></param>
        public void Start(CancellationToken cancellationToken, CollectInfo collectInfo)
        {
            this._collect = collectInfo;

            // 重置任务状态
            this._collectTaskDal.Update(collectInfo.Id, CollectTaskStatus.Running, CollectTaskStatus.None);
            if (cancellationToken.IsCancellationRequested)
            {
                return;
            }

            // 执行初始化脚本,不做异常捕获,发生异常直接退出
            using (var initInvoker = new CollectTaskInvoker(this.State))
            {
                initInvoker.Invoke(collectInfo, null);
            }
            if (cancellationToken.IsCancellationRequested)
            {
                return;
            }

            // 循环执行
            while (true)
            {
                // 取消执行,等待其他任务结束
                if (cancellationToken.IsCancellationRequested)
                {
                    if (this.State.RunningTaskCount > 0)
                    {
                        Thread.Sleep(500);
                        continue;
                    }
                    return;
                }

                // 请求执行
                this._sh.WaitOne();
                var taskInfo = this._collectTaskDal.SelectSingle(collectInfo.Id, CollectTaskStatus.None);
                if (taskInfo == null)
                {
                    taskInfo = this._collectTaskDal.SelectSingle(collectInfo.Id, CollectTaskStatus.Error);
                }
                // 获取不到,等待其他任务结束
                if (taskInfo == null)
                {
                    if (this.State.RunningTaskCount > 0)
                    {
                        Thread.Sleep(500);
                        this._sh.Release();
                        continue;
                    }
                    return;
                }
                taskInfo.Status = CollectTaskStatus.Running;
                taskInfo.RetryCount++;
                this._collectTaskDal.Update(taskInfo);

                // 发起新线程,执行任务
                Task.Factory.StartNew((objTask) =>
                {
                    this.State.RunningTaskCount = 1;
                    CollectTaskInvoker invoker  = null;
                    var refTask    = objTask as CollectTaskInfo;
                    var invokeArgs = new CollectTaskInvokeCompleteArgs()
                    {
                        Task = refTask
                    };
                    try
                    {
                        invoker = this._lock.SafeReadValue(() =>
                        {
                            if (this._invokers.Count > 0)
                            {
                                return(this._invokers.Dequeue());
                            }
                            return(new CollectTaskInvoker(this.State));
                        });
                        invoker.Invoke(this._collect, refTask);
                        refTask.Status = CollectTaskStatus.Complete;
                        this._collectTaskDal.Update(refTask);
                        invokeArgs.Success = true;
                    }
                    catch (Exception ex)
                    {
                        refTask.Status = CollectTaskStatus.Error;
                        if (refTask.RetryCount >= this._retry)
                        {
                            refTask.Status = CollectTaskStatus.Faild;
                        }
                        this._collectTaskDal.Update(refTask);
                        invokeArgs.Success = false;
                        invokeArgs.Error   = ex;
                    }
                    finally
                    {
                        // 单个任务执行结束
                        if (invoker != null)
                        {
                            this._lock.SafeSetValue(t => this._invokers.Enqueue(t), invoker);
                        }
                        if (invokeArgs.Success)
                        {
                            this.State.CompleteTaskCount = 1;
                        }
                        else
                        {
                            this.State.ErrorTaskCount = 1;
                        }
                        this.OnCollectTaskInvokeComplete?.Invoke(this, invokeArgs);
                        this.State.RunningTaskCount = -1;
                        this._sh.Release();
                    }
                }, taskInfo);
            }
        }
示例#10
0
        public static string GetCollectUrl(PublishmentSystemInfo publishmentSystemInfo, CollectInfo collectInfo, string wxOpenId)
        {
            var attributes = new NameValueCollection
            {
                { "publishmentSystemID", collectInfo.PublishmentSystemId.ToString() },
                { "collectID", collectInfo.Id.ToString() },
                { "wxOpenID", wxOpenId }
            };

            return(PageUtils.AddQueryString(GetCollectUrl(publishmentSystemInfo), attributes));
        }
示例#11
0
 public GroupSIDProberTest()
 {
     FakeCollectInfo = GetFakeCollectInfo("oval:modulo:obj:1110");
     FakeItemsToReturnByItemTypeGenerator = new ItemType[] { new group_sid_item() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(this.CreateFakeGroupSIDItemType()) };
 }
示例#12
0
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            if (Page.IsPostBack && Page.IsValid)
            {
                var selectedStep = 0;
                if (PhStep1.Visible)
                {
                    selectedStep = 1;
                }
                else if (PhStep2.Visible)
                {
                    selectedStep = 2;
                }
                else if (PhStep3.Visible)
                {
                    selectedStep = 3;
                }

                PhStep1.Visible = PhStep2.Visible = PhStep3.Visible = false;

                if (selectedStep == 1)
                {
                    var isConflict       = false;
                    var conflictKeywords = string.Empty;
                    if (!string.IsNullOrEmpty(TbKeywords.Text))
                    {
                        if (_collectId > 0)
                        {
                            var collectInfo = DataProviderWx.CollectDao.GetCollectInfo(_collectId);
                            isConflict = KeywordManager.IsKeywordUpdateConflict(PublishmentSystemId, collectInfo.KeywordId, PageUtils.FilterXss(TbKeywords.Text), out conflictKeywords);
                        }
                        else
                        {
                            isConflict = KeywordManager.IsKeywordInsertConflict(PublishmentSystemId, PageUtils.FilterXss(TbKeywords.Text), out conflictKeywords);
                        }
                    }

                    if (isConflict)
                    {
                        FailMessage($"触发关键词“{conflictKeywords}”已存在,请设置其他关键词");
                        PhStep1.Visible = true;
                    }
                    else
                    {
                        PhStep2.Visible = true;
                    }
                }
                else if (selectedStep == 2)
                {
                    PhStep3.Visible = true;
                    BtnSubmit.Text  = "确 认";
                }
                else if (selectedStep == 3)
                {
                    var collectInfo = new CollectInfo();
                    if (_collectId > 0)
                    {
                        collectInfo = DataProviderWx.CollectDao.GetCollectInfo(_collectId);
                    }
                    collectInfo.PublishmentSystemId = PublishmentSystemId;

                    collectInfo.KeywordId  = DataProviderWx.KeywordDao.GetKeywordId(PublishmentSystemId, _collectId > 0, TbKeywords.Text, EKeywordType.Collect, collectInfo.KeywordId);
                    collectInfo.IsDisabled = !CbIsEnabled.Checked;

                    collectInfo.StartDate = DtbStartDate.DateTime;
                    collectInfo.EndDate   = DtbEndDate.DateTime;
                    collectInfo.Title     = PageUtils.FilterXss(TbTitle.Text);
                    collectInfo.ImageUrl  = ImageUrl.Value;;
                    collectInfo.Summary   = TbSummary.Text;

                    collectInfo.ContentImageUrl    = ContentImageUrl.Value;
                    collectInfo.ContentDescription = TbContentDescription.Text;
                    collectInfo.ContentMaxVote     = TranslateUtils.ToInt(TbContentMaxVote.Text);
                    collectInfo.ContentIsCheck     = TranslateUtils.ToBool(DdlContentIsCheck.SelectedValue);

                    collectInfo.EndTitle    = TbEndTitle.Text;
                    collectInfo.EndImageUrl = EndImageUrl.Value;
                    collectInfo.EndSummary  = TbEndSummary.Text;

                    try
                    {
                        if (_collectId > 0)
                        {
                            DataProviderWx.CollectDao.Update(collectInfo);

                            LogUtils.AddAdminLog(Body.AdministratorName, "修改征集活动", $"征集活动:{TbTitle.Text}");
                            SuccessMessage("修改征集活动成功!");
                        }
                        else
                        {
                            _collectId = DataProviderWx.CollectDao.Insert(collectInfo);

                            LogUtils.AddAdminLog(Body.AdministratorName, "添加征集活动", $"征集活动:{TbTitle.Text}");
                            SuccessMessage("添加征集活动成功!");
                        }

                        var redirectUrl = PageCollect.GetRedirectUrl(PublishmentSystemId);
                        AddWaitAndRedirectScript(redirectUrl);
                    }
                    catch (Exception ex)
                    {
                        FailMessage(ex, "征集活动设置失败!");
                    }

                    BtnSubmit.Visible = false;
                    BtnReturn.Visible = false;
                }
            }
        }
示例#13
0
 public AccessTokenProberTest()
 {
     FakeCollectInfo    = GetFakeCollectInfo("oval:modulo:obj:840");
     FakeItemsToCollect = new ItemType[] { new accesstoken_item() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(new accesstoken_item()) };
 }
 public TextFileContentProberUnixTests()
 {
     FakeItemsToCollect = new ItemType[] { new textfilecontent_item() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(new textfilecontent_item()) };
     FakeCollectInfo    = GetFakeCollectInfo("oval:modulo:obj:900");
 }
示例#15
0
 public SIDProberTest()
 {
     FakeCollectInfo = GetFakeCollectInfo("oval:modulo:obj:8");
     FakeItemsToBeReturnedByItemTypeGenerator = new ItemType[] { CreateFakeSidItem() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(CreateFakeSidItem()) };
 }
示例#16
0
 public FileContentProbeTest()
 {
     FakeItemsToReturn = new ItemType[] { CreateFakeTextFileContent() };
     FakeCollectedItem = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(CreateFakeTextFileContent()) };
     FakeCollectInfo   = GetFakeCollectInfo("oval:modulo:obj:9");
 }
        /// <summary>
        /// 显示收数时段
        /// </summary>
        private void ShowCollectDateList()
        {
            try
            {
                List<CollectInfo> collectList = new List<CollectInfo>();

                CodeMaster_cmt_Info cmt = new CodeMaster_cmt_Info();
                cmt.cmt_cKey1 = Common.DefineConstantValue.CodeMasterDefine.KEY1_RecordCollectInterval.ToString();

                List<CodeMaster_cmt_Info> cmtList = _icmBL.FindRecord(cmt);

                cmtList = cmtList.OrderBy(p => p.cmt_cRemark).ToList();

                if (cmtList != null)
                {
                    foreach (CodeMaster_cmt_Info item in cmtList)
                    {
                        if (item != null)
                        {
                            CollectInfo info = new CollectInfo();
                            info.StartTime = DateTime.Parse(item.cmt_cRemark).ToString("HH:mm");
                            info.Name = item.cmt_cRemark2;
                            info.Enable = item.cmt_fNumber == 1 ? "启用" : "停用";
                            info.TimeType = Common.DefineConstantValue.GetMealTypeDesc(item.cmt_cValue);
                            collectList.Add(info);
                        }
                    }

                    _codeMasterList = cmtList;

                    //DataTable dt = new DataTable();
                    //dt.Columns.Add(new DataColumn("StartTime", typeof(DateTime)));//执行时间
                    //dt.Columns.Add(new DataColumn("TimeType", typeof(string)));//时段类型

                    //for (int index = 0; index < cmtList.Count; index++)
                    //{
                    //    CollectInfo cinfo = new CollectInfo();
                    //    cinfo.Name = cmtList[index].cmt_cRemark2;

                    //    try
                    //    {
                    //        DateTime startTime = FormatDate(cmtList[index].cmt_cRemark);

                    //        DataRow dr = dt.NewRow();
                    //        dr["StartTime"] = startTime;
                    //        dr["TimeType"] = cmtList[index].cmt_cValue;
                    //        dt.Rows.Add(dr);//記錄所有時間段

                    //        cinfo.StartTime = startTime.ToString("HH:mm");
                    //        cinfo.EndTime = endTime.ToString("HH:mm");
                    //    }
                    //    catch
                    //    {

                    //    }

                    //    if (cmtList[index].cmt_fNumber > 0)
                    //    {
                    //        cinfo.Enable = "启用";
                    //    }
                    //    else
                    //    {
                    //        cinfo.Enable = "停用";
                    //    }
                    //    collectList.Add(cinfo);
                    //}
                    //SetCurrentTime(dt);
                }

                this.lvwCollectList.SetDataSource(collectList);
            }
            catch
            {

            }
        }
        public override void Submit_OnClick(object sender, EventArgs e)
        {
            if (Page.IsPostBack && Page.IsValid)
            {
                var selectedStep = 0;
                if (phStep1.Visible)
                {
                    selectedStep = 1;
                }
                else if (phStep2.Visible)
                {
                    selectedStep = 2;
                }
                else if (phStep3.Visible)
                {
                    selectedStep = 3;
                }

                phStep1.Visible = phStep2.Visible = phStep3.Visible = false;

                if (selectedStep == 1)
                {
                    var isConflict       = false;
                    var conflictKeywords = string.Empty;
                    if (!string.IsNullOrEmpty(tbKeywords.Text))
                    {
                        if (collectID > 0)
                        {
                            var collectInfo = DataProviderWX.CollectDAO.GetCollectInfo(collectID);
                            isConflict = KeywordManager.IsKeywordUpdateConflict(PublishmentSystemID, collectInfo.KeywordID, PageUtils.FilterXSS(tbKeywords.Text), out conflictKeywords);
                        }
                        else
                        {
                            isConflict = KeywordManager.IsKeywordInsertConflict(PublishmentSystemID, PageUtils.FilterXSS(tbKeywords.Text), out conflictKeywords);
                        }
                    }

                    if (isConflict)
                    {
                        FailMessage($"触发关键词“{conflictKeywords}”已存在,请设置其他关键词");
                        phStep1.Visible = true;
                    }
                    else
                    {
                        phStep2.Visible = true;
                    }
                }
                else if (selectedStep == 2)
                {
                    phStep3.Visible = true;
                    btnSubmit.Text  = "确 认";
                }
                else if (selectedStep == 3)
                {
                    var collectInfo = new CollectInfo();
                    if (collectID > 0)
                    {
                        collectInfo = DataProviderWX.CollectDAO.GetCollectInfo(collectID);
                    }
                    collectInfo.PublishmentSystemID = PublishmentSystemID;

                    collectInfo.KeywordID  = DataProviderWX.KeywordDAO.GetKeywordID(PublishmentSystemID, collectID > 0, tbKeywords.Text, EKeywordType.Collect, collectInfo.KeywordID);
                    collectInfo.IsDisabled = !cbIsEnabled.Checked;

                    collectInfo.StartDate = dtbStartDate.DateTime;
                    collectInfo.EndDate   = dtbEndDate.DateTime;
                    collectInfo.Title     = PageUtils.FilterXSS(tbTitle.Text);
                    collectInfo.ImageUrl  = imageUrl.Value;;
                    collectInfo.Summary   = tbSummary.Text;

                    collectInfo.ContentImageUrl    = contentImageUrl.Value;
                    collectInfo.ContentDescription = tbContentDescription.Text;
                    collectInfo.ContentMaxVote     = TranslateUtils.ToInt(tbContentMaxVote.Text);
                    collectInfo.ContentIsCheck     = TranslateUtils.ToBool(ddlContentIsCheck.SelectedValue);

                    collectInfo.EndTitle    = tbEndTitle.Text;
                    collectInfo.EndImageUrl = endImageUrl.Value;
                    collectInfo.EndSummary  = tbEndSummary.Text;

                    try
                    {
                        if (collectID > 0)
                        {
                            DataProviderWX.CollectDAO.Update(collectInfo);

                            LogUtils.AddLog(BaiRongDataProvider.AdministratorDao.UserName, "修改征集活动",
                                            $"征集活动:{tbTitle.Text}");
                            SuccessMessage("修改征集活动成功!");
                        }
                        else
                        {
                            collectID = DataProviderWX.CollectDAO.Insert(collectInfo);

                            LogUtils.AddLog(BaiRongDataProvider.AdministratorDao.UserName, "添加征集活动",
                                            $"征集活动:{tbTitle.Text}");
                            SuccessMessage("添加征集活动成功!");
                        }

                        var redirectUrl = PageUtils.GetWXUrl(
                            $"background_collect.aspx?publishmentSystemID={PublishmentSystemID}");
                        AddWaitAndRedirectScript(redirectUrl);
                    }
                    catch (Exception ex)
                    {
                        FailMessage(ex, "征集活动设置失败!");
                    }

                    btnSubmit.Visible = false;
                    btnReturn.Visible = false;
                }
            }
        }
示例#19
0
        public UserProberTests()
        {
            var fakeObjects = new Definitions.ObjectType[] { new UserObjectFactory().NewObject("guest") };

            this.FakeCollectInfo = ProbeHelper.CreateFakeCollectInfo(fakeObjects, null, null);
        }
 public EnvironmentVariableProberTest()
 {
     FakeItemsToCollect = new ItemType[] { GetFakeEnvironmentVariableItem() };
     FakeCollectedItems = new CollectedItem[] { GetFakeCollectedItem() };
     FakeCollectInfo    = GetFakeCollectInfo("oval:modulo:obj:2360");
 }
 public RegKeyEffectiveRightsProberTest()
 {
     FakeCollectInfo = GetFakeCollectInfo("oval:modulo:obj:750");
     FakeItemsToReturnByItemTypeGenerator = new ItemType[] { new regkeyeffectiverights_item() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(new regkeyeffectiverights_item()) };
 }
示例#22
0
 public UserSID55ProberTest()
 {
     FakeCollectInfo = this.GetFakeCollectInfo("oval:modulo:obj:1080");
     FakeItemsToBeReturnedByItemTypeGenerator = new ItemType[] { CreateFakeUserSIDItem() };
     FakeCollectedItems = CreateFakeCollectedItems();
 }
 public FileAuditedPermissionsProberTests()
 {
     FakeItemsToCollect = new ItemType[] { new fileauditedpermissions_item() };
     FakeCollectedItems = new CollectedItem[] { ProbeHelper.CreateFakeCollectedItem(FakeItemsToCollect.First()) };
     FakeCollectInfo    = GetFakeCollectInfo("2400");
 }