Beispiel #1
0
 /// <summary>
 /// 节假日查询
 /// 添加人:周 鹏
 /// 添加时间:2015-01-22
 /// </summary>
 /// <history>
 /// 修改描述:时间+作者+描述
 /// </history>
 /// <param name="year">年</param>
 /// <param name="month">月</param>
 /// <returns></returns>
 public string GetHolidays(string year, string month)
 {
     if (!string.IsNullOrEmpty(year) && !string.IsNullOrEmpty(month))
     {
         var list = new ComHolidaysBll().GetSearchResult(new ComHolidaysEntity()
         {
             HostDate = Convert.ToDateTime(year + "-" + month)
         });
         var str = "";
         if (list.Any())
         {
             str = list.Aggregate(str, (current, item) => current + (item.HostDate.Day + ","));
         }
         if (str.Length > 0)
         {
             str = str.Substring(0, str.Length - 1);
         }
         return(str);
     }
     return("");
 }
Beispiel #2
0
        /// <summary>
        /// 获取某流程的的两个节点的直接的相差时间的数量
        /// </summary>
        /// <param name="FlowName">流程名称</param>
        /// <param name="beginActivity">开始节点</param>
        /// <param name="endActivity">结束节点</param>
        /// <param name="days">相差天数</param>
        /// <param name="isMore">是否大于</param>
        /// <returns>数量</returns>
        public List <HandTimeArea> GetWorkListByHandTimeSub(HandTimeSearch searchModel)
        {
            var companyList = new CrmCompanyBll().GetAllCompany(new CrmCompanyEntity()
            {
            });
            var handTimeAreaList = new List <HandTimeArea>();

            foreach (var item in companyList)//循环片区
            {
                handTimeAreaList.Add(new HandTimeArea()
                {
                    CompanyId = item.Id,
                    AreaName  = item.FullName,
                    CaseCount = 0
                });
            }

            var crmMessageWork = this.GetWorkListByHandTime(searchModel);

            if (crmMessageWork == null || crmMessageWork.Count <= 0)
            {
                return(handTimeAreaList);
            }
            var crmMessageWork_item = crmMessageWork.GroupBy(i => i.FormID);

            foreach (var item in crmMessageWork_item)
            {
                var comHolidayBll = new ComHolidaysBll();
                var itemList      = item.ToList();
                if (itemList.Count == 2)
                {
                    var beginTime = itemList[0].StartDate;   //第一个节点消息的接收时间
                    var endTime   = itemList[1].ExecuteDate; //第二个节点处理时间
                    if (searchModel.IsMore)
                    {
                        var subDays = comHolidayBll.HolidaySpan(beginTime, endTime, searchModel.Days);
                        if (!subDays)//大于多少天的(工作日)
                        {
                            var areaModel = handTimeAreaList.Find(i => i.CompanyId == itemList[0].CompanyId);
                            if (areaModel != null)
                            {
                                areaModel.CaseCount++;
                            }
                        }
                    }
                    else
                    {
                        var subDays = comHolidayBll.HolidaySpan(beginTime, endTime, searchModel.Days);
                        if (subDays)//多少天以内的
                        {
                            var areaModel = handTimeAreaList.Find(i => i.CompanyId == itemList[0].CompanyId);
                            if (areaModel != null)
                            {
                                areaModel.CaseCount++;
                            }
                        }
                    }
                }
            }
            return(handTimeAreaList);
        }