コード例 #1
0
 /// <summary>
 /// 加载频率信息
 /// </summary>
 private void ItemsSourceLoad()
 {
     ActivityPlace[] getActivityPlace = PrototypeDatas.GetPlaces(activityId);
     _addressComBox.ItemsSource = getActivityPlace.ToList();
     //加载 频段信息
     if (_currentTask.FrequencyRange.Count > 0)
     {
         foreach (var strfreq in _currentTask.FrequencyRange)
         {
             FreqRange _freq = new FreqRange();
             _freq.FreqFrom = Convert.ToDouble(strfreq.Split('-')[0]);
             _freq.FreqTo = Convert.ToDouble(strfreq.Split('-')[1]);
             _rangeListSource.Add(_freq);
         }
         _freqRangeLBox.ItemsSource = _rangeListSource;
     }
     else
     {
         _freqRangeLBox.ItemsSource = null;
     }
     this.DataContext = _currentTask;
     if (AfterViewLoaded != null)
     {
         AfterViewLoaded();
     }
 }
コード例 #2
0
 public SearchCtrl()
 {
     InitializeComponent();
     activityId = CO_IA.Client.RiasPortal.ModuleContainer.Activity.Guid;
     ActivityPlaceInfo[] getActivityPlace = PrototypeDatas.GetPlacesByActivityId(activityId);
     listPlace.ItemsSource   = getActivityPlace.ToList();
     listPlace.SelectedIndex = 0;
 }
コード例 #3
0
 /// <summary>
 /// 初始加载,监测组和监测地点
 /// </summary>
 private void LoadedSearchCondition()
 {
     //绑定监测组
     _groupCbox.ItemsSource = MonitorHelper.GetDistinctGroupByPlan(sealedorginfo);
     //绑定监测地点
     //string activityId = CO_IA.Client.RiasPortal.ModuleContainer.Activity.Guid;
     ActivityPlaceInfo[] getActivityPlace = PrototypeDatas.GetPlacesByActivityId(activityId);
     _workAddressCbox.ItemsSource = getActivityPlace.ToList();
 }
コード例 #4
0
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if (value == null)
            {
                return(value);
            }
            //GroupAndLocation group = value as GroupAndLocation;
            ActivityPlaceInfo getOrgPlaceinfo = PrototypeDatas.GetPlaceInfo(value.ToString());

            return(getOrgPlaceinfo.Name);
        }
コード例 #5
0
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if (value == null)
            {
                return(value);
            }
            string displayStr = string.Empty;
            ActivityPlaceLocation getLocationinfo = PrototypeDatas.GetLocationByGuid(value.ToString());

            return(getLocationinfo.LocationName);
        }
コード例 #6
0
 public ActivityList(ActivityPlaceInfo p_activityPlace)
 {
     InitializeComponent();
     if (CO_IA.Client.RiasPortal.ModuleContainer.Activity != null)
     {
         _beginDate.Text = CO_IA.Client.RiasPortal.ModuleContainer.Activity.DateFrom.ToShortDateString();
         _endDate.Text   = CO_IA.Client.RiasPortal.ModuleContainer.Activity.DateTo.ToShortDateString();
     }
     else
     {
         _beginDate.Text = DateTime.Now.ToShortDateString();
         _endDate.Text   = DateTime.Now.ToShortDateString();
     }
     //监测地点的位置信息
     _activityPlace = p_activityPlace;
     //获取对应地点的活动位置信息
     ActivityPlaceLocation[] getLocations = _activityPlace.Locations;
     if (activityid != "")
     {
         PT_BS_Service.Client.Framework.BeOperationInvoker.Invoke <I_CO_IA.PersonSchedule.I_CO_IA_PersonSchedule>(channel =>
         {
             list = channel.GetPP_OrgInfos(activityid);
         });
         if (list.Count() > 0)
         {
             listOrgType = list.Where(p => 1 == 1).ToList();
             var groupList = listOrgType.GroupBy(p => p.NAME).ToList();//进行分组操作
             foreach (var group in groupList)
             {
                 var personList = group.ToList();
                 grouplocaction           = new GroupAndLocation();
                 grouplocaction.GroupGuid = personList[0].GUID;
                 groupids.Add(personList[0].GUID);
                 grouplocaction.GroupName    = personList[0].NAME;
                 grouplocaction.Locations    = PrototypeDatas.GetLocations(_activityPlace.Guid);
                 grouplocaction.IsChecked    = true;
                 grouplocaction.GUID         = "";
                 grouplocaction.LocationName = "";
                 //grouplocaction.BeginTime =Convert.ToDateTime(_beginDate.SelectedDate);
                 //grouplocaction.EndTime = Convert.ToDateTime(_endDate.SelectedDate);
                 grouplocaction.BeginTime = Convert.ToDateTime(_beginDate.Text);
                 grouplocaction.EndTime   = Convert.ToDateTime(_endDate.Text);
                 getgroupList.Add(grouplocaction);
             }
             grouplocaction.GroupIDs    = groupids;
             _freqPlaceLBox.ItemsSource = getgroupList;
             _groupGrid.DataContext     = this;
         }
     }
 }
コード例 #7
0
        /// <summary>
        /// 加载频点信息
        /// </summary>
        /// <param name="p_monitorTask"></param>
        private void ItemsPontsLoad(DetailMonitorPlan p_monitorTask)
        {
             //读取频率预案列表
            List<FreqPlanActivity> freqSegment = PrototypeDatas.GetActivityInfo(_currentPlaceInfo.Guid);
            if (freqSegment.Count > 0)
            {
                if (_currentTask.FreqMAINGUIDs.Count > 0)
                {
                    foreach (var freqid in _currentTask.FreqMAINGUIDs)
                    {

                    }
                }
            }
        }
コード例 #8
0
 public MonitorStatistics(string placeid, string p_activityid)
 {
     InitializeComponent();
     activityId = p_activityid;
     // _currentPlan = PrototypeDatas.GetMonitorPlan();
     DetailMonitorPlan[] getAllDetailMonitor = PrototypeDatas.GetDetailMonitorPlan(placeid, activityid);
     if (getAllDetailMonitor != null && getAllDetailMonitor.Count() > 0)
     {
         foreach (var personList in getAllDetailMonitor)
         {
             DetailMonitorPlan orgMonitor = new DetailMonitorPlan();
             orgMonitor.SENDGROUPIDS = personList.SENDGROUPIDS;
             orgMonitor.WORKCONTENT  = personList.WORKCONTENT;
             orgMonitor.Persons      = PrototypeDatas.GetOrgOfPerson(personList.SENDGROUPIDS);
             List <string> liststr = new List <string>();
             if (personList.IMPORTFREQUENCYRANGE.Contains(',') == true)
             {
                 liststr = personList.IMPORTFREQUENCYRANGE.Split(',').ToList();
             }
             else
             {
                 liststr.Add(personList.IMPORTFREQUENCYRANGE);
             }
             orgMonitor.FrequencyRange = liststr;
             originalMontiorList.Add(orgMonitor);
         }
         var groupAllList = originalMontiorList.GroupBy(p => p.SENDGROUPIDS).ToList();//以监测组id进行分组操作
         foreach (var group in groupAllList)
         {
             var personList = group.ToList();
             foreach (var person in personList)
             {
                 DetailMonitorPlan orgMonitor = new DetailMonitorPlan();
                 orgMonitor.SENDGROUPIDS   = person.SENDGROUPIDS;
                 orgMonitor.WORKCONTENT    = person.WORKCONTENT;
                 orgMonitor.Persons        = person.Persons;
                 orgMonitor.FrequencyRange = person.FrequencyRange;
                 curentMontiorList.Add(orgMonitor);
             }
         }
     }
     _taskDataGrid.Items.Clear();
     _taskDataGrid.ItemsSource = curentMontiorList;
     LoadedSearchCondition();
     // LoadedViewContent(_currentPlan.Tasks);
 }
コード例 #9
0
        public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
        {
            if (string.IsNullOrEmpty(value as string))
            {
                return(value);
            }
            PP_OrgInfo           getOrginfo = PrototypeDatas.GetPP_OrgInfo(value.ToString());
            List <PP_PersonInfo> personList = PrototypeDatas.GetPersonList(value.ToString());
            string personDisplay            = string.Empty;

            personDisplay = getOrginfo.NAME;
            if (personList.Count > 0)
            {
                personDisplay += "{";
                foreach (PP_PersonInfo personInfo in personList)
                {
                    personDisplay += personInfo.NAME + ",";
                }
                personDisplay  = personDisplay.Substring(0, personDisplay.Length - 1);
                personDisplay += "}";
            }
            return(personDisplay);
        }
コード例 #10
0
        /// <summary>
        /// 选择监测组信息(显示组及组内人员信息)
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void PersonSelectBtn_Click(object sender, RoutedEventArgs e)
        {
            //所得所有已存的人员组织结构
            List <PP_OrgInfo>        list        = new List <PP_OrgInfo>();
            List <PP_OrgInfo>        listOrgType = new List <PP_OrgInfo>();
            List <Sealed_PP_OrgInfo> sealedList  = new List <Sealed_PP_OrgInfo>();

            // activity = CO_IA.Client.RiasPortal.ModuleContainer.Activity;

            //新建还是读取
            if (string.IsNullOrEmpty(activityGuid) == true)
            {
            }
            else
            {
                PT_BS_Service.Client.Framework.BeOperationInvoker.Invoke <I_CO_IA.PersonSchedule.I_CO_IA_PersonSchedule>(channel =>
                {
                    list = channel.GetPP_OrgInfos(activityGuid);
                });
                if (list.Count() > 0)
                {
                    listOrgType = list.Where(p => 1 == 1).ToList();
                    foreach (PP_OrgInfo orginfo in listOrgType)
                    {
                        Sealed_PP_OrgInfo currentinfo = new Sealed_PP_OrgInfo();
                        currentinfo.Children      = orginfo.Children;
                        currentinfo.GUID          = orginfo.GUID;
                        currentinfo.ACTIVITY_GUID = activityGuid;

                        currentinfo.NAME        = orginfo.NAME;
                        currentinfo.PARENT_GUID = orginfo.PARENT_GUID;

                        currentinfo.Persons = PrototypeDatas.GetOrgOfPerson(orginfo.GUID);
                        sealed_pp_org.Add(currentinfo);
                    }
                }

                var workerDialog = new WorkerSelectedDialog(sealed_pp_org);
                workerDialog.OKButtonClick += (personGroupList) =>
                {
                    string personDisplay = string.Empty;
                    if (personGroupList != null)
                    {
                        foreach (Sealed_PP_OrgInfo ppinfo in personGroupList)
                        {
                            personDisplay = ppinfo.NAME;//监测组名
                            if (ppinfo.Persons.Count() > 0)
                            {
                                personDisplay += "{";
                                foreach (PP_PersonInfo personInfo in ppinfo.Persons)
                                {
                                    personDisplay += personInfo.NAME + ",";
                                }
                                personDisplay  = personDisplay.Substring(0, personDisplay.Length - 1);
                                personDisplay += "}";
                            }
                            _workerTBox.Text          = personDisplay;
                            _workerTBox.Tag           = personGroupList;
                            _currentTask.SENDGROUPIDS = ppinfo.GUID;//监测组id
                            _currentTask.SENDGROUPS   = personDisplay;
                        }
                    }
                };
                workerDialog.Show();
            }
        }
コード例 #11
0
        /// <summary>
        /// 确定 按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void OkButton_Click(object sender, RoutedEventArgs e)
        {
            if (DateTime.Compare(Convert.ToDateTime(_beginDate.SelectedDate), Convert.ToDateTime(_endDate.SelectedDate)) > 0)
            {
                MessageBox.Show("开始时间不能大于结束时间!");
                return;
            }
            #region 判断监测小组在指定日期内是否已生成过监测任务
            bool ischeckfre = false;
            DetailMonitorPlan[] detailSoure = PrototypeDatas.GetDetailMonitorPlan(_currentPlaceInfo.Guid, _currentTask.ACTIVITY_GUID);
            //手动或自动 先判断数据库中是否已经存在任务
            var fresquery = detailSoure.Where(p => p.SENDGROUPIDS == _currentTask.SENDGROUPIDS).ToList();
            if (fresquery.Count() > 0)
            {
                foreach (var dtquery in fresquery)
                {
                    bool isStartDate = PrototypeDatas.IsInDate(_currentTask.STARTTASKDATE, dtquery.STARTTASKDATE, dtquery.ENDTASKDATE);
                    bool isEndDate = PrototypeDatas.IsInDate(_currentTask.ENDTASKDATE, dtquery.STARTTASKDATE, dtquery.ENDTASKDATE);
                    if (isStartDate == true || isEndDate == true)
                    {
                        PP_OrgInfo getOrginfo = PrototypeDatas.GetPP_OrgInfo(dtquery.SENDGROUPIDS.ToString());
                        MessageBox.Show(getOrginfo.NAME + ",设置的指定日期内已经生成过监测任务!请重新设置日期!");
                        ischeckfre = true;
                    }
                }
            }
            if (ischeckfre == true)
                return;
            #endregion
            if (AfterOkButtonClick != null)
            {
                string currentMainIds = "";
                //根据频率段的选择,更新频段对应的频率主键id值
                List<string> currentFreqIds = new List<string>();
                if (_freqRangeLBox.ItemsSource != null)
                {
                    //根据选择的频率段值,更新存储的频率段集合
                    List<FreqRange> rst = _freqRangeLBox.ItemsSource as List<FreqRange>;
                    string currentFreqRange = "";
                    List<string> freqList = new List<string>();
                    foreach (FreqRange range in rst)
                    {
                        string _range = range.FreqFrom.ToString() + '-' + range.FreqTo.ToString();
                        freqList.Add(_range);
                        currentFreqRange += _range + ",";
                    }
                    currentFreqRange = currentFreqRange.TrimEnd(',');

                    //根据选择的频率段集合,更新存储的频率预案信息id集合
                    List<FreqPlanActivity> originalFreq = PrototypeDatas.GetActivityInfo(_currentPlaceInfo.Guid);
                    if (_currentTask.FreqMAINGUIDs.Count > 0)
                    {
                        foreach (var freqid in _currentTask.FreqMAINGUIDs)
                        {
                            Range<double> originalFreqRange = originalFreq.Where(p => p.Guid == freqid).FirstOrDefault().FreqValue;
                            string orgfreq = (originalFreqRange.Little / 1000000).ToString() + "-" + (originalFreqRange.Great / 1000000).ToString();
                            if (currentFreqRange.Contains(orgfreq) == true)
                            {
                                currentFreqIds.Add(freqid);
                                currentMainIds += freqid + ",";
                            }
                        }
                    }
                    _currentTask.FrequencyRange = freqList;
                    _currentTask.IMPORTFREQUENCYRANGE = currentFreqRange;
                    _currentTask.FreqMAINGUIDs = currentFreqIds;
                    _currentTask.MAINGUID = currentMainIds.TrimEnd(',').ToString();
                }
                AfterOkButtonClick(_currentTask);
            }
            this.Close();
        }