软测单独项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

158 lines
8.5 KiB

using FY.TaskScheduler;
using System;
using System.Data;
namespace SmartCamp.TaskServer.Job
{
public class MyTask
{
FangYar.BLL.TBL_ALARMDATA bll_ta = new FangYar.BLL.TBL_ALARMDATA();
public void Init()
{
TaskJobManager.AddTaskRunNowMinutes(() => AddTask(), 10, "init2");
}
public void AddTask()
{
try
{
string currentChar = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
Console.WriteLine("执行时间:" + currentChar);
try
{
//请假超期报警过程
//查询请假通过但未销假集合(state = 0:审批通过,IS_RETURN = 2:已销假)
DataTable dt_empalarm = bll_ta.EmpLeaveAlarm(currentChar);
if (dt_empalarm.Rows.Count > 0)
{
Console.WriteLine("请假记录数:" + dt_empalarm.Rows.Count);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("请假记录数:" + dt_empalarm.Rows.Count);
for (int i = 0; i < dt_empalarm.Rows.Count; i++)
{
Console.WriteLine("请假ID:" + dt_empalarm.Rows[i]["ID"].ToString());
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("请假ID:" + dt_empalarm.Rows[i]["ID"].ToString());
FangYar.Model.OA.TBL_ALARMDATA model_ta = new FangYar.Model.OA.TBL_ALARMDATA();
model_ta.ID = Guid.NewGuid().ToString("N");
model_ta.ORG_ID = dt_empalarm.Rows[i]["ORG_ID"].ToString();
model_ta.TIME = DateTime.Parse(currentChar);
model_ta.ALARM_TYPE = "1";
model_ta.ALARM_DES = dt_empalarm.Rows[i]["PPL_NAME"].ToString() + "的" + dt_empalarm.Rows[i]["DIC_TEXT"].ToString()
+ ":" + "【超期未归】";
model_ta.EMP_ID = dt_empalarm.Rows[i]["EMP_ID"].ToString();
model_ta.USERS_UID = dt_empalarm.Rows[i]["PPL_ID"].ToString();
model_ta.LEAVE_ID = dt_empalarm.Rows[i]["ID"].ToString();
model_ta.EXTENDCODE1 = "0";
bool flag = bll_ta.Add(model_ta);
if (flag) //推送消息
{
string whereEmp = "org_id = '" + dt_empalarm.Rows[i]["ORG_ID"].ToString() + "' and type = '1'";
string receiveIds = "";
DataTable dtEmp = bll_ta.AlarmDataReceiveEmp(whereEmp);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("此条推送人员数量:" + dtEmp.Rows.Count);
for (int j = 0; j < dtEmp.Rows.Count; j++)
{
if (j == 0)
{
receiveIds += dtEmp.Rows[j]["USERS_UID"].ToString();
}
else
{
receiveIds += "," + dtEmp.Rows[j]["USERS_UID"].ToString();
}
}
if (!string.IsNullOrEmpty(receiveIds))
{
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("此条推送人员:" + receiveIds);
FangYar.FYMQTT.MessagePush mp = new FangYar.FYMQTT.MessagePush();
mp.MultiMsgPush(receiveIds, model_ta.ALARM_DES);
}
}
}
}
}
catch (Exception e)
{
Console.WriteLine("请假超期报警过程:" + e.Message);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("请假超期报警过程:" + e.Message);
Console.WriteLine("请假超期报警过程:" + e.StackTrace);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("请假超期报警过程:" + e.StackTrace);
}
try
{
//用车超期报警过程
//查询用车申请通过但未销假集合(state = 0:审批通过,IS_RETURN = 2:已销假)
DataTable dt_caralarm = bll_ta.CarLeaveAlarm(currentChar);
if (dt_caralarm.Rows.Count > 0)
{
Console.WriteLine("用车记录数:" + dt_caralarm.Rows.Count);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("用车记录数:" + dt_caralarm.Rows.Count);
for (int i = 0; i < dt_caralarm.Rows.Count; i++)
{
Console.WriteLine("用车记录ID:" + dt_caralarm.Rows[i]["ID"].ToString());
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("用车记录ID:" + dt_caralarm.Rows[i]["ID"].ToString());
FangYar.Model.OA.TBL_ALARMDATA model_ta = new FangYar.Model.OA.TBL_ALARMDATA();
model_ta.ID = Guid.NewGuid().ToString("N");
model_ta.ORG_ID = dt_caralarm.Rows[i]["ORG_ID"].ToString();
model_ta.TIME = DateTime.Parse(currentChar);
model_ta.ALARM_TYPE = "2";
model_ta.ALARM_DES = dt_caralarm.Rows[i]["USERNAME"].ToString() + ":" + dt_caralarm.Rows[i]["TITLE"].ToString() + "【超期未归】";
model_ta.USERS_UID = dt_caralarm.Rows[i]["USERID"].ToString().Replace("u_", "");
model_ta.CAR_ID = dt_caralarm.Rows[i]["CARID"].ToString();
model_ta.CAR_NUM = dt_caralarm.Rows[i]["CARNUM"].ToString();
model_ta.CARAPPLY_ID = dt_caralarm.Rows[i]["ID"].ToString();
model_ta.EXTENDCODE1 = "0";
bool flag = bll_ta.Add(model_ta);
if (flag) //推送消息
{
string whereEmp = "org_id = '" + dt_caralarm.Rows[i]["ORG_ID"].ToString() + "' and type = '1'";
string receiveIds = "";
DataTable dtEmp = bll_ta.AlarmDataReceiveEmp(whereEmp);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("此条推送人员数量:" + dtEmp.Rows.Count);
for (int j = 0; j < dtEmp.Rows.Count; j++)
{
if (j == 0)
{
receiveIds += dtEmp.Rows[j]["USERS_UID"].ToString();
}
else
{
receiveIds += "," + dtEmp.Rows[j]["USERS_UID"].ToString();
}
}
if (!string.IsNullOrEmpty(receiveIds))
{
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("此条推送人员:" + receiveIds);
FangYar.FYMQTT.MessagePush mp = new FangYar.FYMQTT.MessagePush();
mp.MultiMsgPush(receiveIds, model_ta.ALARM_DES);
}
}
}
}
}
catch (Exception e)
{
Console.WriteLine("用车超期报警过程:" + e.Message);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("用车超期报警过程:" + e.Message);
Console.WriteLine("用车超期报警过程:" + e.StackTrace);
//SmartCamp.Utility.Log4net.LogManager.WriteInfo("用车超期报警过程:" + e.StackTrace);
}
}
catch (Exception e)
{
Console.WriteLine(e.Message.ToString());
}
}
}
}