Пример #1
0
 /// <summary>
 /// 更新自动分配状态
 /// </summary>
 /// <param name="model">自动分配任务实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public override int UpdateStatus(SyJobDispatcher model)
 {
     return(Context.Update("SyJobDispatcher")
            .Column("Status", model.Status)
            .Where("SysNo", model.SysNo)
            .Execute());
 }
Пример #2
0
 /// <summary>
 /// 更新自动分配状态及数量
 /// </summary>
 /// <param name="model">自动分配任务实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public override int UpdateStatusQuantity(SyJobDispatcher model)
 {
     return(Context.Update("SyJobDispatcher")
            .Column("MaxTaskQuantity", model.MaxTaskQuantity)
            .Column("Status", model.Status)
            .Column("Prioritys", model.Prioritys)
            .Where("SysNo", model.SysNo)
            .Execute());
 }
Пример #3
0
        /// <summary>
        /// 以默认值插入自动分配记录
        /// </summary>
        /// <param name="taskType">任务类型</param>
        /// <returns>自动分配实体</returns>
        /// <remarks>2013-10-09 朱家宏 创建</remarks>
        private SyJobDispatcher InsertJobDispatcher(int taskType)
        {
            var model = new SyJobDispatcher
            {
                TaskType        = taskType,
                Status          = 1,
                UserSysNo       = CurrentUser.Base.SysNo,
                MaxTaskQuantity = 0
            };

            Hyt.BLL.Sys.SyJobDispatcherBo.Instance.InsertJobDispatcher(model);
            return(model);
        }
Пример #4
0
        public JsonResult SaveJobDispatcher(int userSysNo, List <SyJobDispatcher> sets, string prioritys)
        {
            var r = new Result {
                Status = false, StatusCode = 0, Message = "操作失败"
            };

            if (sets != null && sets.Any())
            {
                foreach (var item in sets)
                {
                    SyJobDispatcher model = Hyt.BLL.Sys.SyJobDispatcherBo.Instance.GetJobDispatcher(userSysNo, item.TaskType);

                    if (model == null)
                    {
                        model = new SyJobDispatcher
                        {
                            TaskType        = item.TaskType,
                            Status          = item.Status, //界面上传入客服工作状态
                            UserSysNo       = userSysNo,
                            MaxTaskQuantity = item.MaxTaskQuantity,
                            Prioritys       = prioritys
                        };
                        Hyt.BLL.Sys.SyJobDispatcherBo.Instance.InsertJobDispatcher(model);
                    }
                    else
                    {
                        model.Status          = item.Status;//界面上传入客服工作状态
                        model.MaxTaskQuantity = item.MaxTaskQuantity;
                        model.Prioritys       = prioritys;
                        SyJobDispatcherBo.Instance.UpdateStatusQuantity(model);
                    }
                    r.Status = true;
                }
                SysLog.Instance.WriteLog(LogStatus.SysLogLevel.Info, LogStatus.系统日志来源.后台, "修改客服工作量设置,被修改人:" + SyUserBo.Instance.GetUserName(userSysNo),
                                         LogStatus.系统日志目标类型.任务池, userSysNo, null, null, CurrentUser.Base.SysNo);
            }

            if (r.Status)
            {
                r.Message = "操作成功";
            }
            return(Json(r, JsonRequestBehavior.AllowGet));
        }
Пример #5
0
        public ActionResult ApplyJobs(string sysNos, int taskType)
        {
            var result = new Result();

            if (!string.IsNullOrEmpty(sysNos) && taskType > 0)
            {
                int userSysNo = CurrentUser.Base.SysNo;
                var jobNum    = SyJobPoolManageBo.Instance.GetJobsNumByUser(userSysNo, taskType);
                //获取自动任务配置
                SyJobDispatcher model           = Hyt.BLL.Sys.SyJobDispatcherBo.Instance.GetJobDispatcher(CurrentUser.Base.SysNo, taskType) ?? new SyJobDispatcher();
                var             maxTaskQuantity = model.MaxTaskQuantity > 0 ? model.MaxTaskQuantity : 10;
                if (jobNum >= maxTaskQuantity)
                {
                    result.StatusCode = -2;
                    result.Message    = "最多申领" + maxTaskQuantity + "个任务,您的任务数已满,请处理后再来申领!";
                }
                else
                {
                    string[] ids  = sysNos.Split(',');
                    var      jobs = maxTaskQuantity - jobNum;
                    if (jobs > 0)
                    {
                        sysNos = ids.Take(jobs).ToArray().Join(",");
                    }
                    try
                    {
                        Hyt.BLL.Sys.SyJobPoolManageBo.Instance.AssignJobs(sysNos, userSysNo, userSysNo);
                        result.Message = "您成功申领" + sysNos.Split(',').Length + "个任务!";
                    }
                    catch (Exception ex)
                    {
                        SysLog.Instance.WriteLog(LogStatus.SysLogLevel.Error, LogStatus.系统日志来源.后台, "任务池申领错误:" + sysNos,
                                                 LogStatus.系统日志目标类型.任务池, 0, null, null, userSysNo);
                    }
                }
            }
            else
            {
                result.StatusCode = -1;
                result.Message    = "尚未选择任务对象!";
            }
            return(Json(result));
        }
Пример #6
0
        public ActionResult JobDispatcher(int taskType, int status)
        {
            var             result = new Result();
            SyJobDispatcher model  = Hyt.BLL.Sys.SyJobDispatcherBo.Instance.GetJobDispatcher(CurrentUser.Base.SysNo, taskType);

            if (model != null)
            {
                var stat = status == 1 ? 0 : 1; //状态为1表示开启,为0关闭
                model.Status = stat;
                Hyt.BLL.Sys.SyJobDispatcherBo.Instance.UpdateStatus(model);
                result.StatusCode = model.Status;
                #region 日志 朱成果 2013/12/20
                try
                {
                    string strDes = "(我的工作)" + Hyt.Util.EnumUtil.GetDescription(typeof(Hyt.Model.WorkflowStatus.SystemStatus.任务对象类型), taskType);
                    if (model.Status == 1)
                    {
                        strDes += ":开启";
                    }
                    else
                    {
                        strDes += ":关闭";
                    }
                    Hyt.BLL.Log.SysLog.Instance.Info(LogStatus.系统日志来源.后台, strDes, LogStatus.系统日志目标类型.任务池, CurrentUser.Base.SysNo,
                                                     CurrentUser.Base.SysNo);
                }
                catch { }
                #endregion
            }
            else
            {
                InsertJobDispatcher(taskType);
                result.StatusCode = 1;
            }

            return(Json(result));
        }
Пример #7
0
 /// <summary>
 /// 插入自动分配记录
 /// </summary>
 /// <param name="model">自动分配实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public override int InsertJobDispatcher(SyJobDispatcher model)
 {
     return(Context.Insert("SyJobDispatcher", model)
            .AutoMap(x => x.SysNo)
            .ExecuteReturnLastId <int>("SysNo"));
 }
Пример #8
0
 /// <summary>
 /// 更新自动分配状态及数量
 /// </summary>
 /// <param name="model">自动分配任务实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public abstract int UpdateStatusQuantity(SyJobDispatcher model);
Пример #9
0
 /// <summary>
 /// 插入自动分配记录
 /// </summary>
 /// <param name="model">自动分配实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public abstract int InsertJobDispatcher(SyJobDispatcher model);
Пример #10
0
 /// <summary>
 /// 更新自动分配状态及数量
 /// </summary>
 /// <param name="model">自动分配任务实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public int UpdateStatusQuantity(SyJobDispatcher model)
 {
     return(ISyJobDispatcher.Instance.UpdateStatusQuantity(model));
 }
Пример #11
0
 /// <summary>
 /// 插入自动分配记录
 /// </summary>
 /// <param name="model">自动分配实体</param>
 /// <returns>返回系统编号</returns>
 /// <remarks>2013-06-21 余勇 创建</remarks>
 public int InsertJobDispatcher(SyJobDispatcher model)
 {
     return(ISyJobDispatcher.Instance.InsertJobDispatcher(model));
 }