TG.WXCRM.V4/IBLL/MsgTool/IMsgToolTask.cs

311 lines
8.6 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using WX.CRM.Common.Layui;
using WX.CRM.Model;
using WX.CRM.Model.Entity;
namespace WX.CRM.IBLL.MsgTool
{
public interface IMsgToolTask : IRepository<MsgToolTask>
{
List<MsgToolTaskViewModel> GetTaskList(ref Laypage pager, MsgToolPlanQueryDto dto);
bool AddMsgTask(MsgToolTaskCreateDto model);
MsgEditTaskModel GetMsgTaskEditModel(decimal id);
List<MsgToolExecuteViewModel> GetExecuteList(ref Laypage pager, decimal taskid);
/* bool AddMsgPlan(MsgToolPlanCreateDto model);*/
bool CancelTask(decimal taskId);
List<CmdDetailDto> GetTaskCmdDetail(ref Laypage pager, CmdDetailQueryDto dto);
bool SetCmdDetailEnable(SetCmdEnableDto cmdDetailIds);
string BuildQiweiJson(MsgToolTask taskid);
bool CreateTask(decimal taskid);
}
#region
public class MsgToolExecuteViewModel
{
public decimal PKID { get; set; }
public string WeworkName { get; set; }
public string Phone { get; set; }
public string Nickname { get; set; }
public string Euser { get; set; }
public string Email { get; set; }
public decimal? ASSIGNSTATUS { get; set; }
public int Count { get; set; }
public int STATUS { get; set; }
public int EnableCount { get; set; }
public int UnExecCount { get; set; }
public int SuccessCount { get; set; }
public int FailCount { get; set; }
public int NotFoundCount { get; set; }
public int TaskStatus { get; set; }
public bool CanRun { get; set; }
}
public class MsgEditTaskModel
{
public decimal Eid { get; set; }
public decimal? PKID { get; set; }
public string PLANNAME { get; set; }
public string CORPIDS { get; set; }
public int TaskType { get; set; } = 2;
public List<string> CorplList
{
get
{
return string.IsNullOrEmpty(CORPIDS) ? new List<string>() :
CORPIDS.Split(',').ToList();
}
}
public decimal GROUPID { get; set; }
public string GROUPNAME { get; set; }
public string GROUPMEMO { get; set; }
public decimal RECEIVERID { get; set; }
public string JSONDATA { get; set; }
public string SENDTYPE { get; set; }
public string REMARK { get; set; }
public string PLANEXECYCLE { get; set; }
public string PLANEXETIME { get; set; }
public string PLANEXEDATE { get; set; }
public string PLANEXEHOUR { get; set; }
public string DUEDATE { get; set; }
public string QiWeiPostJson { get; set; }
}
public class MsgToolTaskViewModel
{
/// <summary>
/// 任务id
/// </summary>
public decimal PKID { get; set; }
/// <summary>
/// 任务发起人
/// </summary>
public decimal CreateEid { get; set; }
/// <summary>
/// 任务发起人
/// </summary>
public string Creator { get; set; }
/// <summary>
/// 任务接收人
/// </summary>
public string Receiver { get; set; }
/// <summary>
/// 任务接收人
/// </summary>
public decimal ReceiverEid { get; set; }
/// <summary>
/// 任务名称
/// </summary>
public string PlanName { get; set; }
/// <summary>
/// 发送内容
/// </summary>
public string JsonData { get; set; }
/// <summary>
/// 发送内容
/// </summary>
public string SendData { get; set; }
/// <summary>
/// 群发对象
/// </summary>
public string GroupName { get; set; }
/// <summary>
/// 发送类型
/// </summary>
public string SendType { get; set; }
/// <summary>
/// 发送类型
/// </summary>
public string SendTypeName
{
get; set;
}
/// <summary>
/// 群发数量
/// </summary>
public int Count { get; set; }
/// <summary>
/// 成功数
/// </summary>
public int SuccessCount { get; set; }
/// <summary>
/// 失败数
/// </summary>
public int FailCount { get; set; }
/// <summary>
/// 状态
/// </summary>
public int Status { get; set; }
/// <summary>
/// StatusName
/// </summary>
public string StatusName { get; set; }
/// <summary>
/// 备注
/// </summary>
public string Remark { get; set; }
/// <summary>
/// 执行时间
/// </summary>
public DateTime? ExecTime { get; set; }
/// <summary>
/// 执行结束时间
/// </summary>
public DateTime? ExitTime { get; set; }
/// <summary>
/// 周期
/// </summary>
public string Cycle { get; set; }
/// <summary>
/// 周期周期次数
/// </summary>
public int CycleCount { get; set; }
public DateTime? planexetime { get; set; } //计划执行时间
/// <summary>
/// 截止时间
/// </summary>
public DateTime? DUEDATE { get; set; }
/// <summary>
/// 创建时间
/// </summary>
public DateTime? Ctime { get; set; }
}
public class TaskReturnModel
{
public int pageIndex { get; set; }
public int pageSize { get; set; }
public int total { get; set; }
public int totalCount { get; set; }
public List<MsgToolTaskViewModel> data { get; set; }
}
public class MsgToolTaskCreateDto
{
public decimal? PKID { get; set; }
public string PLANNAME { get; set; }
public decimal GROUPID { get; set; }
public string GROUPNAME { get; set; }
public string GROUPMEMO { get; set; }
public string CORPIDS { get; set; }
public string JSONDATA { get; set; }
public string SENDTYPE { get; set; }
public DateTime? PLANEXETIME { get; set; }
public DateTime? PLANEXEDATE { get; set; }
public string PLANEXECYCLE { get; set; }
public decimal Eid { get; set; }
public string PLANEXEHOUR { get; set; }
public DateTime? DUEDATE { get; set; }
public string REMARK { get; set; }
public int Type { get; set; } // 1 报错草稿 2 确认分发
public string QiWeiPostJson { get; set; }
public int TaskType { get; set; }
}
public class ExecListModel
{
public int pageIndex { get; set; }
public int pageSize { get; set; }
public int total { get; set; }
public int totalCount { get; set; }
public List<MsgToolExecuteViewModel> data { get; set; }
}
public class CmdDetailListModel
{
public int pageIndex { get; set; }
public int pageSize { get; set; }
public int total { get; set; }
public int totalCount { get; set; }
public List<CmdDetailDto> data { get; set; }
}
public class CmdDetailDto
{
public decimal Pkid { get; set; }
public string Nickname { get; set; }
public string Avatar { get; set; }
public string Name { get; set; }
public string Userid { get; set; }
public string Corpid { get; set; }
public int? UnEnabled { get; set; }
public string KfUserId { get; set; }
public string Remark { get; set; }
}
public class CmdDetailQueryDto
{
public decimal cmdId { get; set; }
public string name { get; set; }
}
public class SetCmdEnableDto
{
public decimal CmdId { get; set; }
public string cmdDetailIds { get; set; }
public string allpostData { get; set; }
}
public class QiWeiPostJson
{
public string corpid { get; set; }
public string userid { get; set; }
public string corpname { get; set; }
public int? pagetype { get; set; }
public string kfnickname { get; set; }
public List<OutUserList> outuserList { get; set; }
}
public class OutUserList
{
public string name { get; set; }
public string userid { get; set; }
}
public class MsgToolSetting
{
public bool HasNotice { get; set; }
public int TaskLimit { get; set; }
public string QiWeiUrl { get; set; }
}
#endregion
}