定时任务
This commit is contained in:
@@ -0,0 +1,187 @@
|
||||
namespace BLL
|
||||
{
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
public static class InterFaceService
|
||||
{
|
||||
public static Model.SGGLDB db = Funs.DB;
|
||||
|
||||
/// <summary>
|
||||
/// 获取接口设置信息
|
||||
/// </summary>
|
||||
/// <param name="InterFaceSetId">设置Id</param>
|
||||
/// <returns>接口设置信息</returns>
|
||||
public static Model.InterFaceSet GetFaceSetById(string InterFaceSetId)
|
||||
{
|
||||
return Funs.DB.InterFaceSet.FirstOrDefault(e => e.InterFaceSetId == InterFaceSetId);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 增加接口设置信息
|
||||
/// </summary>
|
||||
/// <param name="faceset">接口设置</param>
|
||||
public static void AddFaceSet(Model.InterFaceSet faceset)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
string newKeyID = SQLHelper.GetNewID(typeof(Model.InterFaceSet));
|
||||
List<InterFaceDetail> detailList = new List<InterFaceDetail>();
|
||||
Model.InterFaceSet newSet = new Model.InterFaceSet
|
||||
{
|
||||
InterFaceSetId = newKeyID,
|
||||
InterFaceName = faceset.InterFaceName,
|
||||
AuthUnitIds = faceset.AuthUnitIds,
|
||||
AuthUnitName = faceset.AuthUnitName,
|
||||
InterFaceUrl = faceset.InterFaceUrl,
|
||||
InterFaceForUrl = faceset.InterFaceForUrl,
|
||||
ValidPeriod = faceset.ValidPeriod,
|
||||
UnitId = faceset.UnitId,
|
||||
TxtRemarks = faceset.TxtRemarks,
|
||||
IsOpen = faceset.IsOpen,
|
||||
IsReqPost = faceset.IsReqPost,
|
||||
IsCallBack= faceset.IsCallBack,
|
||||
InterFaceCallBackUrl= faceset.InterFaceCallBackUrl,
|
||||
};
|
||||
//明细表
|
||||
foreach (var AuthUnitId in newSet.AuthUnitIds.Split(','))
|
||||
{
|
||||
Model.InterFaceDetail deteil = new Model.InterFaceDetail
|
||||
{
|
||||
InterFaceDetailId = SQLHelper.GetNewID(typeof(Model.InterFaceDetail)),
|
||||
InterFaceName = newSet.InterFaceName,
|
||||
UnitId = newSet.UnitId,
|
||||
AuthUnitIds = AuthUnitId,
|
||||
InterFaceSetlId = newSet.InterFaceSetId,
|
||||
ReportState = false,
|
||||
GainState = false,
|
||||
};
|
||||
detailList.Add(deteil);
|
||||
}
|
||||
db.InterFaceDetail.InsertAllOnSubmit(detailList);
|
||||
db.InterFaceSet.InsertOnSubmit(newSet);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 修改接口设置信息
|
||||
/// </summary>
|
||||
/// <param name="user">接口设置实体</param>
|
||||
public static void UpdateFaceSet(Model.InterFaceSet user)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
List<InterFaceDetail> detailList = new List<InterFaceDetail>();
|
||||
Model.InterFaceSet newSet = db.InterFaceSet.FirstOrDefault(e => e.InterFaceSetId == user.InterFaceSetId);
|
||||
if (newSet != null)
|
||||
{
|
||||
newSet.InterFaceName = user.InterFaceName;
|
||||
newSet.AuthUnitIds = user.AuthUnitIds;
|
||||
newSet.AuthUnitName = user.AuthUnitName;
|
||||
newSet.InterFaceUrl = user.InterFaceUrl;
|
||||
newSet.InterFaceForUrl = user.InterFaceForUrl;
|
||||
newSet.UnitId = user.UnitId;
|
||||
newSet.ValidPeriod = user.ValidPeriod;
|
||||
newSet.UnitId = user.UnitId;
|
||||
newSet.TxtRemarks = user.TxtRemarks;
|
||||
newSet.IsOpen = user.IsOpen;
|
||||
newSet.IsReqPost = user.IsReqPost;
|
||||
newSet.IsCallBack = user.IsCallBack;
|
||||
newSet.InterFaceCallBackUrl= user.InterFaceCallBackUrl;
|
||||
var AuthUnitIds = newSet.AuthUnitIds.Split(',');
|
||||
//明细表
|
||||
List<Model.InterFaceDetail> FaceDetailList = db.InterFaceDetail.Where(e => e.InterFaceSetlId == user.InterFaceSetId).ToList();
|
||||
//删除无效明细
|
||||
var oldDetails = FaceDetailList.Where(p=> !AuthUnitIds.Equals(p.AuthUnitIds)) ;
|
||||
if (oldDetails.Count() > 0)
|
||||
{
|
||||
db.InterFaceDetail.DeleteAllOnSubmit(oldDetails);
|
||||
}
|
||||
foreach (var AuthUnitId in AuthUnitIds)
|
||||
{
|
||||
Model.InterFaceDetail deteil = new Model.InterFaceDetail
|
||||
{
|
||||
InterFaceDetailId = SQLHelper.GetNewID(typeof(Model.InterFaceDetail)),
|
||||
InterFaceName = newSet.InterFaceName,
|
||||
UnitId = newSet.UnitId,
|
||||
AuthUnitIds = AuthUnitId,
|
||||
InterFaceSetlId = newSet.InterFaceSetId,
|
||||
};
|
||||
var FaceDetail = FaceDetailList.FirstOrDefault(p => p.AuthUnitIds == AuthUnitId);
|
||||
if (FaceDetail == null)
|
||||
{
|
||||
detailList.Add(deteil);
|
||||
}
|
||||
}
|
||||
db.InterFaceDetail.InsertAllOnSubmit(detailList);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 根据Id删除信息
|
||||
/// </summary>
|
||||
/// <param name="SetId"></param>
|
||||
public static void DeleteFaceSet(string SetId)
|
||||
{
|
||||
Model.SGGLDB db = Funs.DB;
|
||||
Model.InterFaceSet FaceSet = db.InterFaceSet.FirstOrDefault(e => e.InterFaceSetId == SetId);
|
||||
if (FaceSet != null)
|
||||
{
|
||||
var logs = from x in db.Sys_Log where x.UserId == SetId select x;
|
||||
if (logs.Count() > 0)
|
||||
{
|
||||
db.Sys_Log.DeleteAllOnSubmit(logs);
|
||||
}
|
||||
db.InterFaceSet.DeleteOnSubmit(FaceSet);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 保存上报数据记录
|
||||
/// </summary>
|
||||
/// <param name="newItem">上报数据</param>
|
||||
/// <returns></returns>
|
||||
public static string SaveUpData(Model.InterFaceItem newItem)
|
||||
{
|
||||
if (newItem.FaceLogDate.Count() == 0)
|
||||
return "数据不可为空!";
|
||||
using (Model.SGGLDB db = new Model.SGGLDB(Funs.ConnString))
|
||||
{
|
||||
List<string> InterFaceLogIdList = new List<string>();
|
||||
List<Model.InterFaceLog> logList = new List<Model.InterFaceLog>();
|
||||
string message = string.Empty;
|
||||
var FaceDetailList = db.InterFaceDetail.Where(x => newItem.FaceLogDate.Select(p=>p.UnitId).Equals(x.UnitId));
|
||||
foreach (var item in newItem.FaceLogDate)
|
||||
{
|
||||
//如果配置接口名称存在 进行数据保存
|
||||
var faceDetail = FaceDetailList.FirstOrDefault(p => p.InterFaceName == item.InterFaceName);
|
||||
if (faceDetail != null)
|
||||
{
|
||||
faceDetail.ReportDate = DateTime.Now;
|
||||
faceDetail.ReportState = true;
|
||||
Model.InterFaceLog FaceLog = new Model.InterFaceLog();
|
||||
FaceLog.InterFaceLogId = SQLHelper.GetNewID(typeof(Model.InterFaceLog));
|
||||
FaceLog.TxtContent = item.TxtContent;
|
||||
FaceLog.InterFaceLogDate = Convert.ToDateTime(item.InterFaceLogDate);
|
||||
FaceLog.LogSate = false;
|
||||
FaceLog.CollCropCode = item.CollCropCode;
|
||||
FaceLog.IP = item.IP;
|
||||
FaceLog.UnitId = item.UnitId;
|
||||
FaceLog.InterFaceDetailId = faceDetail.InterFaceDetailId;
|
||||
logList.Add(FaceLog);
|
||||
}
|
||||
else //配置接口名称不存在 记录反馈给前端提示
|
||||
{
|
||||
InterFaceLogIdList.Add(item.InterFaceName);
|
||||
}
|
||||
}
|
||||
db.InterFaceLog.InsertAllOnSubmit(logList);
|
||||
db.SubmitChanges();
|
||||
}
|
||||
|
||||
return "数据同步成功";
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user