예제 #1
0
 /// <summary>
 /// 获得信息以后,回调UI
 /// </summary>
 protected void OnUICallBackEvent(RemindEntity customer)
 {
     try
     {
         if (UICallBackEvent != null)
         {
             UICallBackEvent(this, new AnnouncementEventArgs(customer));
         }
     }
     catch (Exception ex)
     {
         Utility.LogHelper.WriteException(ex);
     }
 }
        private void DispatchRemindMessage(List <LaborContractEntity> laborContractList)
        {
            RemindEntity remindEntity = CreateRemindEntity();

            foreach (LaborContractEntity laborContractEntity in laborContractList)
            {
                LaborEntity labor = laborContractEntity.Labor;
                remindEntity.RemindTitle    = string.Format("劳务人员【{0}】的合同【{1}】将在{2}到期", labor.UserNameCN, laborContractEntity.LaborContractDetails, laborContractEntity.LaborContractStopDate.ToShortDateString());
                remindEntity.RemindCategory = RemindCategories.ContractRemindOfLabor;
                remindEntity.RemindUrl      = string.Empty;

                RemindBLL.Instance.Create(labor.ServiceUserGuid, ExecutorTypes.User, remindEntity);
            }
        }
예제 #3
0
        private void DispatchRemindMessage(List <EnterpriseContractEntity> enterpriseContractList)
        {
            RemindEntity remindEntity = CreateRemindEntity();

            foreach (EnterpriseContractEntity enterpriseContractEntity in enterpriseContractList)
            {
                remindEntity.RemindTitle    = string.Format("企业【{0}】的合同【{1}】将在{2}到期", enterpriseContractEntity.EnterpriseInfo, enterpriseContractEntity.ContractTitle, enterpriseContractEntity.ContractStopDate.ToShortDateString());
                remindEntity.RemindCategory = RemindCategories.ContractRemindOfEnterprise;
                remindEntity.RemindUrl      = string.Empty;
                List <BusinessUser> employeeList = BusinessUserBLL.GetList(UserTypes.Manager, UserStatuses.Normal);
                foreach (BusinessUser item in employeeList)
                {
                    RemindBLL.Instance.Create(item.ExecutorGuid, ExecutorTypes.User, remindEntity);
                }
            }
        }
        /// <summary>
        /// 劳务人员的生日提醒是发送到为其服务的客服人员
        /// </summary>
        /// <param name="birthdayUserList"></param>
        protected override void DispatchRemindMessage(List <BusinessUser> birthdayUserList)
        {
            RemindEntity remindEntity = CreateRemindEntity();

            foreach (BusinessUser currentUser in birthdayUserList)
            {
                remindEntity.RemindTitle    = string.Format("劳务人员【{0}】将在{1}过生日", currentUser.UserNameDisplay, currentUser.UserBirthDay.ToShortDateString());
                remindEntity.RemindCategory = RemindCategories.BirthdayRemindOfLabor;
                remindEntity.RemindUrl      = string.Empty;

                //向劳务人员的对应的业务人员发送提醒数据
                LaborEntity labor = LaborBLL.Instance.Get(currentUser.UserGuid);
                if (labor.BusinessUserGuid != Guid.Empty)
                {
                    RemindBLL.Instance.Create(labor.ServiceUserGuid, ExecutorTypes.User, remindEntity);
                }
            }
        }
예제 #5
0
 /// <summary>
 /// 创建提醒实体
 /// </summary>
 /// <returns></returns>
 /// <remarks>
 /// 请在派生类中修改实体的以下属性
 /// RemindCategory
 /// RemindTitle
 /// RemindGuid
 /// </remarks>
 protected virtual RemindEntity CreateRemindEntity()
 {
     RemindEntity remindEntity = new RemindEntity();
     remindEntity.ActivityKey = string.Empty;
     remindEntity.CreateDate = DateTime.Now;
     remindEntity.Emergency = LevelTypes.Normal;
     remindEntity.ExpireDate = DateTime.Today.AddDays(5);
     remindEntity.Importance = LevelTypes.Normal;
     remindEntity.RemindCategory = RemindCategories.None;
     remindEntity.RemindTitle = string.Empty;
     remindEntity.RemindUrl = string.Empty;
     remindEntity.RemindType = 0;
     remindEntity.ResourceKey = string.Empty;
     remindEntity.SenderKey = GuidHelper.SystemKeyString;
     remindEntity.SenderName = "系统";
     remindEntity.StartDate = DateTime.Now;
     remindEntity.TopLevel = 0;
     return remindEntity;
 }
예제 #6
0
        /// <summary>
        /// 创建提醒实体
        /// </summary>
        /// <returns></returns>
        /// <remarks>
        /// 请在派生类中修改实体的以下属性
        /// RemindCategory
        /// RemindTitle
        /// RemindGuid
        /// </remarks>
        protected virtual RemindEntity CreateRemindEntity()
        {
            RemindEntity remindEntity = new RemindEntity();

            remindEntity.ActivityKey    = string.Empty;
            remindEntity.CreateDate     = DateTime.Now;
            remindEntity.Emergency      = LevelTypes.Normal;
            remindEntity.ExpireDate     = DateTime.Today.AddDays(5);
            remindEntity.Importance     = LevelTypes.Normal;
            remindEntity.RemindCategory = RemindCategories.None;
            remindEntity.RemindTitle    = string.Empty;
            remindEntity.RemindUrl      = string.Empty;
            remindEntity.RemindType     = 0;
            remindEntity.ResourceKey    = string.Empty;
            remindEntity.SenderKey      = GuidHelper.SystemKeyString;
            remindEntity.SenderName     = "系统";
            remindEntity.StartDate      = DateTime.Now;
            remindEntity.TopLevel       = 0;
            return(remindEntity);
        }
        /// <summary>
        /// 内部员工生日提醒是发送到配置文件中设置的生日提醒接收人角色
        /// </summary>
        /// <param name="birthdayUserList"></param>
        protected override void DispatchRemindMessage(List <BusinessUser> birthdayUserList)
        {
            string[] roles = StringHelper.SplitToArray(SystemTaskInConfig.GetAddonItemValue("receiveRoleNames"));

            RemindEntity remindEntity = CreateRemindEntity();

            foreach (BusinessUser currentUser in birthdayUserList)
            {
                remindEntity.RemindTitle    = string.Format("同事【{0}】将在{1}过生日", currentUser.UserNameDisplay, currentUser.UserBirthDay.ToShortDateString());
                remindEntity.RemindCategory = RemindCategories.BirthdayRemindOfEmployee;
                remindEntity.RemindUrl      = string.Empty;

                //向指定的角色发送提醒数据
                foreach (string currentRole in roles)
                {
                    BusinessRole role = BusinessRoleBLL.Get(currentRole);
                    RemindBLL.Instance.Create(role.ExecutorGuid, ExecutorTypes.Role, remindEntity);
                }
            }
        }
예제 #8
0
        /// <summary>
        /// 获得 需要联系的客户信息
        /// </summary>
        protected RemindEntity GetCustomer()
        {
            try
            {
                FishBll.Bll.RemindBll bll = new FishBll.Bll.RemindBll();
                //string where = string.Format( " nextlinkdate >='{0}'", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") );

                string where = string.Format(" salesmancode ='{0}' and TO_DAYS(nextlinkdate) = TO_DAYS(now()) limit 1", FishEntity.Variable.User.id);
                List <RemindEntity> list = bll.GetRemind(where);

                RemindEntity remind = null;  // _loginManager.GetAnnouncement( _cookieContainer );

                if (list != null && list.Count > 0)
                {
                    remind = list[0];
                }
                return(remind);
            }
            catch (Exception ex)
            {
                Utility.LogHelper.WriteException(ex);
                return(null);
            }
        }
예제 #9
0
        /// <summary>
        ///
        /// </summary>
        protected void Run()
        {
            long         startTemp = 0;
            long         endTemp   = 0;
            RemindEntity customer  = null;

            startTemp = DateTime.Now.Ticks;
            while (_flag)
            {
                Thread.Sleep(200);
                endTemp = DateTime.Now.Ticks;
                TimeSpan span = new TimeSpan(endTemp - startTemp);

                if (span.TotalMilliseconds < _period)
                {
                    continue;
                }
                customer = GetCustomer();
                OnUICallBackEvent(customer);
                startTemp = DateTime.Now.Ticks;

                break;
            }
        }
예제 #10
0
 public RemindEntity Insert(RemindEntity entity)
 {
     return(_remindRepository.Insert(entity));
 }
예제 #11
0
 public AnnouncementEventArgs(RemindEntity entity)
 {
     _announcement = entity;
 }