跑批 班组级 检查任务发送修改(不同步到SPS)

待办处理
审批默认通过 回调接口处理
This commit is contained in:
wyw 2024-05-09 08:45:56 +08:00
parent 4e638109b1
commit cf7d4bded2
7 changed files with 373 additions and 102 deletions

View File

@ -613,10 +613,27 @@ namespace APT.BaseData.Services.Services.FM
//回调方法写在之后 不然之前数据都没有保存到数据库 原有的方法不能使用
if (!string.IsNullOrEmpty(CALLBACK_INTERFACE))
{
this.UnifiedCommit(() =>
if (CALLBACK_INTERFACE == "BS/BSSafeCheck/CheckAuditEnd" || CALLBACK_INTERFACE == "BS/BSSafeCheck/CheckPlanAuditEnd" || CALLBACK_INTERFACE == "BS/BSRiskSubmit/Notice" ||
CALLBACK_INTERFACE == "BS/BSRiskSubmit/DealEnd" || CALLBACK_INTERFACE == "BS/BSRiskSubmitDelayApply/DealEnd" || CALLBACK_INTERFACE == "FO/FOJobEventRecord/BackUpdate")
{
ApproveCallBackService.CallBack(CALLBACK_INTERFACE, listDATA_ID);
});
CALLBACK_INTERFACE = CALLBACK_INTERFACE + "New";
this.UnifiedCommit(() =>
{
ApproveCallBackService.CallBackNew(CALLBACK_INTERFACE, approve, false);
});
}
else
{
this.UnifiedCommit(() =>
{
ApproveCallBackService.CallBack(CALLBACK_INTERFACE, listDATA_ID);
});
}
//this.UnifiedCommit(() =>
//{
// ApproveCallBackService.CallBack(CALLBACK_INTERFACE, listDATA_ID);
//});
}
}

View File

@ -161,7 +161,7 @@ namespace APT.BaseData.Services.DomainServices
case "FO/FOJobEventRecord/BackUpdate"://绩效测量与评估
result = BackUpdate_FOJobEventRecord(DATA_ID);
break;
#region
//case "OH/OHHealthExamPlan/PlanMasterBack"://绩效测量与评估
@ -364,15 +364,15 @@ namespace APT.BaseData.Services.DomainServices
// PFApproveCallBackMTService.EventResultBack(listDATA_ID[i]);
// }
// break;
case "SC/SCStandardCreate/BackUpdate"://绩效测量与评估
for (int i = 0; i < listDATA_ID.Count; i++)
{
BackUpdate_SCStandardCreate(listDATA_ID[i]);
}
break;
case "FO/FOJobEventRecord/BackUpdate"://绩效测量与评估
for (int i = 0; i < listDATA_ID.Count; i++)
{
@ -1137,7 +1137,10 @@ namespace APT.BaseData.Services.DomainServices
RESPONOBJECT = RESPONOBJECT
};
}
if (modelCheck != null && modelCheck.CHECKOBJECT == 0 && deal.Nav_Submit != null && deal.Nav_Submit.CHECKOBJECT.HasValue)
{
modelCheck.CHECKOBJECT = (int)deal.Nav_Submit.CHECKOBJECT.Value;
}
UnifiedCommit(() =>
{
UpdateEntityNoCommit(deal);//修改状态 审批结束
@ -2042,7 +2045,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2133,7 +2136,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2177,7 +2180,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2266,7 +2269,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2310,7 +2313,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2326,7 +2329,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -2355,7 +2358,7 @@ namespace APT.BaseData.Services.DomainServices
});
return true;
}
/// <summary>
/// 返回所有上级部门节点
/// </summary>
@ -2372,7 +2375,7 @@ namespace APT.BaseData.Services.DomainServices
GetParentDepartmentIds(orgId, listDepIDInt, ref departmentIdPs);
}
}
private bool BackUpdate_SCStandardCreate(string id)
{
var content = "";
@ -2420,7 +2423,7 @@ namespace APT.BaseData.Services.DomainServices
});
return true;
}
/// <summary>
/// 回调函数
/// </summary>
@ -5368,7 +5371,7 @@ namespace APT.BaseData.Services.DomainServices
leaderuser.DEFAULT_APPROVE_USER_ID = entity.DEPUTY_GROUP_LEADER_ID;
}
}
if (orgId == Guid.Parse("b043b28b-bbc3-c452-6052-4fba1457abfa") )//行洛坑
if (orgId == Guid.Parse("b043b28b-bbc3-c452-6052-4fba1457abfa"))//行洛坑
{
sendUser = (Guid)GetEntity<T_FM_DEPARTMENT>(t => t.NAME == "办公室").USER_ID;
sendUserName = GetEntity<T_FM_USER>(sendUser.ToString()).NAME;
@ -5446,7 +5449,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -5459,10 +5462,10 @@ namespace APT.BaseData.Services.DomainServices
switch (CALLBACK_INTERFACE)
{
case "BS/BSSafeCheck/CheckPlanAuditEndNew":
result = CheckPlanAuditEndNew(entityInt, modelApp, listAppDetail, taskFinish, listTaskNext, isLast);
result = CheckPlanAuditEndNew(entityInt, modelApp, listAppDetail, taskFinish, listTaskNext, isLast, isApprovel);
break;
case "BS/BSSafeCheck/CheckAuditEndNew":
result = CheckAuditEndNew(entityInt, modelApp, listAppDetail, taskFinish, listTaskNext, isLast);
result = CheckAuditEndNew(entityInt, modelApp, listAppDetail, taskFinish, listTaskNext, isLast, isApprovel);
break;
case "BS/BSRiskSubmit/NoticeNew":
result = NoticeNew(entityInt, modelApp, listAppDetail, taskFinish, listTaskNext, isLast, isApprovel);
@ -6172,11 +6175,11 @@ namespace APT.BaseData.Services.DomainServices
/// <param name="isLast">是否审批最后一步</param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
private bool CheckPlanAuditEndNew(T_PF_APPROVE entityInt, T_PF_APPROVE modelApp, List<T_PF_APPROVE_DETAIL> listAppDetail, T_FM_NOTIFICATION_TASK taskFinish, List<T_FM_NOTIFICATION_TASK> listTaskNext, bool isLast = false)
private bool CheckPlanAuditEndNew(T_PF_APPROVE entityInt, T_PF_APPROVE modelApp, List<T_PF_APPROVE_DETAIL> listAppDetail, T_FM_NOTIFICATION_TASK taskFinish, List<T_FM_NOTIFICATION_TASK> listTaskNext, bool isLast = false, bool isApprovel = true)
{
#region
if (modelApp == null)
if (modelApp == null && isApprovel)
{
string taskCodeCheck = String.Empty;
bool result = GetApproject2(entityInt, ref modelApp, ref listAppDetail, ref taskFinish, ref taskCodeCheck, ref isLast, ref listTaskNext);
@ -6188,13 +6191,13 @@ namespace APT.BaseData.Services.DomainServices
#endregion
if (!isLast)
if (!isLast && isApprovel)
{
this.UnifiedCommit(() =>
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -6204,7 +6207,7 @@ namespace APT.BaseData.Services.DomainServices
}
else
{
var entity = GetEntity<T_BS_SAFE_CHECK>(modelApp.DATA_ID);
var entity = GetEntity<T_BS_SAFE_CHECK>(modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID);
var orgId = APT.Infrastructure.Api.AppContext.CurrentSession.OrgId;
//2、添加安全检查填写表单配置 BS034
@ -6362,7 +6365,7 @@ namespace APT.BaseData.Services.DomainServices
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -6388,11 +6391,11 @@ namespace APT.BaseData.Services.DomainServices
/// <param name="isLast">是否审批最后一步</param>
/// <returns></returns>
/// <exception cref="Exception"></exception>
private bool CheckAuditEndNew(T_PF_APPROVE entityInt, T_PF_APPROVE modelApp, List<T_PF_APPROVE_DETAIL> listAppDetail, T_FM_NOTIFICATION_TASK taskFinish, List<T_FM_NOTIFICATION_TASK> listTaskNext, bool isLast = false)
private bool CheckAuditEndNew(T_PF_APPROVE entityInt, T_PF_APPROVE modelApp, List<T_PF_APPROVE_DETAIL> listAppDetail, T_FM_NOTIFICATION_TASK taskFinish, List<T_FM_NOTIFICATION_TASK> listTaskNext, bool isLast = false, bool isApprovel = true)
{
#region
if (modelApp == null)
if (modelApp == null && isApprovel)
{
string taskCodeCheck = String.Empty;
bool result = GetApproject2(entityInt, ref modelApp, ref listAppDetail, ref taskFinish, ref taskCodeCheck, ref isLast, ref listTaskNext);
@ -6404,13 +6407,13 @@ namespace APT.BaseData.Services.DomainServices
#endregion
if (!isLast)
if (!isLast && isApprovel)
{
this.UnifiedCommit(() =>
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -6421,7 +6424,7 @@ namespace APT.BaseData.Services.DomainServices
else
{
//如果是最后一个审批
var entity = GetEntity<T_BS_SAFE_CHECK>(modelApp.DATA_ID, new string[] { "Nav_ListSafeCheckDetail", "Nav_User", "Nav_CheckType", "Nav_CheckTypeLevel.Nav_Enums" });
var entity = GetEntity<T_BS_SAFE_CHECK>((modelApp != null ? modelApp.DATA_ID : entityInt.DATA_ID), new string[] { "Nav_ListSafeCheckDetail", "Nav_User", "Nav_CheckType", "Nav_CheckTypeLevel.Nav_Enums" });
if (!entity.PLAN_SET_ID.HasValue || !entity.CHECKTIME.HasValue || entity.CHECKTIME.Value.Date == DateTime.Now.Date) //同一天
{
entity.ISFINISHINTTIME = true;
@ -6450,11 +6453,13 @@ namespace APT.BaseData.Services.DomainServices
// entity.STATUCHECK = (int)HMAuditStatusEnmu.归档; //已完成
//else if (modelApprove.APPROVE_STATUS == 20)
// entity.STATUCHECK = (int)HMAuditStatusEnmu.审批驳回; //已驳回
if (entityInt.CurrentNode.NODE_APPROVE_STATUS == 10)
entity.STATUCHECK = (int)HMAuditStatusEnmu.; //已完成
else if (entityInt.CurrentNode.NODE_APPROVE_STATUS == 20)
entity.STATUCHECK = (int)HMAuditStatusEnmu.; //已驳回
if (isApprovel)
{
if (entityInt.CurrentNode.NODE_APPROVE_STATUS == 10)
entity.STATUCHECK = (int)HMAuditStatusEnmu.; //已完成
else if (entityInt.CurrentNode.NODE_APPROVE_STATUS == 20)
entity.STATUCHECK = (int)HMAuditStatusEnmu.; //已驳回
}
//组合库
List<T_BS_CHECK_MAIN> listCheckMain = new List<T_BS_CHECK_MAIN>();
@ -6713,6 +6718,15 @@ namespace APT.BaseData.Services.DomainServices
modelSub.CHECK_TYPE_ID = entity.CHECK_TYPE_ID;
modelSub.CHECK_TYPE_LEVEL_ID = entity.CHECK_TYPE_LEVEL_ID;
modelSub.ORG_ID = entity.ORG_ID;
if (entity.CHECKOBJECT.HasValue)
{
try
{
modelSub.CHECKOBJECT = (BSMineTypeEnum)entity.CHECKOBJECT;
}
catch { }
}
List<T_BS_RISK_SUBMIT_FILE> Nav_Files = null;
var files = GetEntities<T_BS_SAFE_CHECK_FILE>(e => e.SAFE_CHECK_ID == entity.ID, false, null);
@ -6736,7 +6750,7 @@ namespace APT.BaseData.Services.DomainServices
int ROW_NO = 0;
foreach (var item in entity.Nav_ListSafeCheckDetail)
{
if (!item.CHECKRESULT.HasValue || item.CHECKRESULT.Value !=20) // CHECKRESULTEnum.Same
if (!item.CHECKRESULT.HasValue || item.CHECKRESULT.Value != 20) // CHECKRESULTEnum.Same
{
continue;
}
@ -6791,7 +6805,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -6825,7 +6839,7 @@ namespace APT.BaseData.Services.DomainServices
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -6877,7 +6891,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -7364,7 +7378,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -7422,7 +7436,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -7702,12 +7716,18 @@ namespace APT.BaseData.Services.DomainServices
};
}
//整改完成后 完善检查库
if (modelCheck != null && modelCheck.CHECKOBJECT == 0 && deal.Nav_Submit != null && deal.Nav_Submit.CHECKOBJECT.HasValue)
{
modelCheck.CHECKOBJECT = (int)deal.Nav_Submit.CHECKOBJECT.Value;
}
UnifiedCommit(() =>
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -7760,7 +7780,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);
@ -7859,7 +7879,7 @@ namespace APT.BaseData.Services.DomainServices
{
if (modelApp != null)
UpdateEntityNoCommit(modelApp); //保存主表
if (listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
if (listAppDetail != null && listAppDetail.Count > 0)//添加组合数据 修改的安全库、隐患库
BantchSaveEntityNoCommit(listAppDetail);
if (taskFinish != null)
UpdateEntityNoCommit(taskFinish);

View File

@ -1244,7 +1244,11 @@ namespace APT.BaseData.Services.DomainServices
mi.Name.ToUpper() != mi.Name)
{
if (mi.DeclaringType.Name == "T_PF_MENU" && mi.Name == "MineType")
{
{
if (dstOrgId=="A3DCE14A-13D9-D879-D9AB-821D4A3F1F93")
{
continue;//wyw 菜单导出 功能优化 SMS 没有 MineType
}
}
else
{

View File

@ -95,6 +95,7 @@ namespace APT.MS.Domain.Entities.BS
/// <summary>
/// 检查时间
/// 此字段在 SMS 判断 是否有值 判断 班组级安全检查 如果有值 不按排班处理(按组织结构)
/// </summary>
[Description("检查时间")]
[FormFieldEdit]

View File

@ -92,9 +92,16 @@
<!--40000-->
<message name="020027">
<item>器具不出在或者未绑定节点:{0}</item>
</message>
<message name="020028">
<item>您已审批过此单,不能重复操作!</item>
</message>
<message name="020030">
<item>
驳回接口未配置,请联系管理员
</item>
</message>
</messages>

View File

@ -4,6 +4,7 @@ using APT.BaseData.Domain.Entities.PF;
using APT.BaseData.Domain.Entities.T4;
using APT.BaseData.Domain.Enums;
using APT.Infrastructure.Core;
using APT.MS.Domain.Entities.BS;
using APT.MS.Domain.Entities.SC;
using APT.MS.Domain.Enums;
using APT.Utility;
@ -361,6 +362,11 @@ namespace APT.FM.WebApi.Controllers.Api
T_SC_MT_MEETING meeting = null;
var task = this.GetEntity<T_FM_NOTIFICATION_TASK>(keywordFilter.Keyword);
T_BS_RISK_SUBMIT_CONTENT_DEAL contentDeal = null;
T_BS_RISK_SUBMIT_CONTENT content = null;
T_BS_SAFE_CHECK check = null;
T_BS_SAFE_CHECK_RECORD checkRecord = null;
IEnumerable<T_BS_SAFE_CHECK_DETAIL_USER> listDetailUser = null;
if (task != null && task.SOURCE_DATA_ID.HasValue)
{
if (task.NOTICE_STATUS != 0)
@ -407,14 +413,171 @@ namespace APT.FM.WebApi.Controllers.Api
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = meeting.ID.ToString();
#endregion
break;
case "BS032":
#region
check = GetEntity<T_BS_SAFE_CHECK>(task.SOURCE_DATA_ID.Value);
if (check.STATECHECK != STATECHECK.Draft && check.STATECHECK == STATECHECK.WaitForCheck)
{
throw new Exception("该检查记录不能转办(状态:" + check.STATECHECK.GetDescription() + "");
}
check.USERID_DOPLAN = userID;//部门不去改变
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS032_SHOWPRINT":
#region //检查任务表确认 修改检查人
listDetailUser = GetEntities<T_BS_SAFE_CHECK_DETAIL_USER>(e => e.SAFE_CHECK_ID == task.SOURCE_DATA_ID && e.USER_ID == task.USER_ID, null, null);
if (listDetailUser != null && listDetailUser.Any())
{
foreach (var item in listDetailUser)
{
item.USER_ID = userID;
}
check = GetEntity<T_BS_SAFE_CHECK>(task.SOURCE_DATA_ID.Value);
check.CheckUsers = check.CheckUsers.Replace(task.USER_NAME, userName);
}
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS044":
#region
contentDeal = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(task.SOURCE_DATA_ID.Value);
contentDeal.ACTUAL_DEAL_USER_ID = userID;
contentDeal.MODIFY_TIME = DateTime.Now;
if (!contentDeal.RISK_SUBMIT_CONTENT_ID.HasValue)
{
throw new Exception("获取上报明细有误转办失败!");
}
content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(contentDeal.RISK_SUBMIT_CONTENT_ID.Value);
content.ACTUAL_DEAL_USER_ID = userID;
content.MODIFY_TIME = DateTime.Now;
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS057":
#region
listDetailUser = GetEntities<T_BS_SAFE_CHECK_DETAIL_USER>(e => e.SAFE_CHECK_ID == task.SOURCE_DATA_ID && e.USER_ID == task.USER_ID && (!e.SAFECHECKSTATE.HasValue || e.SAFECHECKSTATE.Value != 80), null, null);//SAFECHECKSTATEEnum.Send
if (listDetailUser != null && listDetailUser.Any())
{
foreach (var item in listDetailUser)
{
item.USER_ID = userID;
}
check = GetEntity<T_BS_SAFE_CHECK>(task.SOURCE_DATA_ID.Value);
check.CheckUsers = check.CheckUsers.Replace(task.USER_NAME, userName);
}
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS034":
#region
checkRecord = GetEntity<T_BS_SAFE_CHECK_RECORD>(task.SOURCE_DATA_ID.Value);
checkRecord.USER_ID = userID;
listDetailUser = GetEntities<T_BS_SAFE_CHECK_DETAIL_USER>(e => e.SAFE_CHECK_ID == checkRecord.SAFE_CHECK_ID && e.USER_ID == task.USER_ID && (!e.SAFECHECKSTATE.HasValue || e.SAFECHECKSTATE.Value != 80), null, null);//SAFECHECKSTATEEnum.Send
if (listDetailUser != null && listDetailUser.Any())
{
foreach (var item in listDetailUser)
{
item.USER_ID = userID;
}
check = GetEntity<T_BS_SAFE_CHECK>(checkRecord.SAFE_CHECK_ID.Value);
check.CheckUsers = check.CheckUsers.Replace(task.USER_NAME, userName);
}
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS074":
#region
content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_NOTICE_PERSON_ID.HasValue && e.RISK_SUBMIT_NOTICE_PERSON_ID == task.SOURCE_DATA_ID.Value);
content.DEAL_USER_ID = userID;
content.MODIFY_TIME = DateTime.Now;
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS042_SHOWPRINT":
#region
content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_NOTICE_PERSON_ID.HasValue && e.RISK_SUBMIT_NOTICE_PERSON_ID == task.SOURCE_DATA_ID.Value);
content.CHECK_USER_ID = userID;
content.MODIFY_TIME = DateTime.Now;
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS042_ACTUALCHECK":
#region
content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(e => e.RISK_SUBMIT_NOTICE_PERSON_ID.HasValue && e.RISK_SUBMIT_NOTICE_PERSON_ID == task.SOURCE_DATA_ID.Value);
content.ACTUAL_DEAL_USER_ID = userID;
content.MODIFY_TIME = DateTime.Now;
contentDeal = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(e => e.RISK_SUBMIT_CONTENT_ID == content.ID);
if (contentDeal != null)
contentDeal.ACTUAL_DEAL_USER_ID = userID;
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS044_CHECK":
#region
contentDeal = GetEntity<T_BS_RISK_SUBMIT_CONTENT_DEAL>(task.SOURCE_DATA_ID.Value);
content = GetEntity<T_BS_RISK_SUBMIT_CONTENT>(contentDeal.RISK_SUBMIT_CONTENT_ID.Value);
if (contentDeal.DEAL_USER_ID == task.USER_ID)
{
contentDeal.DEAL_USER_ID = userID;
contentDeal.MODIFY_TIME = DateTime.Now;
content.DEAL_USER_ID = userID;
}
else if (contentDeal.CHECK_USER_ID == task.USER_ID)
{
contentDeal.CHECK_USER_ID = userID;
contentDeal.MODIFY_TIME = DateTime.Now;
content.CHECK_USER_ID = userID;
}
log.LOG_DATA = task.USER_ID.ToString() + " (" + task.USER_NAME + ") " + " => " + userID + "(" + userName + ")";
log.EXT_DATA = task.SOURCE_DATA_ID.ToString();
#endregion
break;
case "BS073"://手动隐患上报-指定责任单位
case "BS006"://隐患待上报 //可能不需要处理
//无需处理
break;
default:
break;
}
}
#region
@ -422,6 +585,7 @@ namespace APT.FM.WebApi.Controllers.Api
task.USER_ID = userID;
task.USER_NAME = userName;
task.MODIFY_TIME = DateTime.Now;
task.SENDTIME = DateTime.MinValue;
log.LOG_TITLE = task.SOURCE_FORMCODE;
@ -437,6 +601,16 @@ namespace APT.FM.WebApi.Controllers.Api
this.AddEntityNoCommit(log);
if (meeting != null)
this.UpdateEntityNoCommit(meeting);
if (check != null)
this.UpdateEntityNoCommit(check);
if (checkRecord != null)
this.UpdateEntityNoCommit(checkRecord);
if (contentDeal != null)
this.UpdateEntityNoCommit(contentDeal);
if (content != null)
this.UpdateEntityNoCommit(content);
if (listDetailUser != null)
this.BantchSaveEntityNoCommit(listDetailUser);
});
return true;
});

View File

@ -195,8 +195,8 @@ namespace APT.PP.WebApi.Controllers.Api.PP
#endregion
break;
case 10:
//每日天执行 时间匹配就添加
if (listPlanSet[i].Nav_CheckTypeLevel.Nav_Enums.NAME != "班组级")
//每日天执行 时间匹配就添加 此代码不同步到SPS
if (listPlanSet[i].CHECKTIME.HasValue || listPlanSet[i].Nav_CheckTypeLevel.Nav_Enums.NAME != "班组级")//如果是特殊处理 或者不是班组级
{
listPlanSetRund.Add(listPlanSet[i]);//如果是班组级 跳过(另外一个跑批)
}
@ -325,6 +325,7 @@ namespace APT.PP.WebApi.Controllers.Api.PP
T_BS_PLAN_SET_OBJECT checkObject = null;
T_BS_PLAN_SET_DEP_OBJECT checkDetObject = null;
T_FM_DEPARTMENT depTemp = null;
for (int i = 0; i < listPlanSetRund.Count; i++)
{
if (i == 0)
@ -618,39 +619,105 @@ namespace APT.PP.WebApi.Controllers.Api.PP
}
else if (listPlanSetRund[i].PLANCHECKOBJECT == 20)//班长
{
//找到今天有上班的 班组 对应 班长
//排班 T_FM_DEPARTMENT_SCHEDULING 班组T_FM_TEAM 班长CHARGE_PERSON_ID 人员Nav_ChargePerson 用户Nav_User
//listPlanSetRund[i].CHECKTIME "Nav_ProdutionUnit.Nav_Enums"
List<T_FM_DEPARTMENT_SCHEDULING> listTeamScheduling = null;
string[] pathScheduling = { "Nav_DepartMent", "Nav_Team.Nav_ChargePerson.Nav_User.Nav_Department.Nav_Enums" };//, "Nav_Team.Nav_ChargePerson.Nav_DepartMent"
if (listPlanSetRund[i].CHECKTIME == null)
//此代码不同步到 SPS
if (listPlanSetRund[i].CHECKTIME.HasValue)
{
//没有检查时间 就当天 有排班
listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME != e.END_TIME, null, pathScheduling).ToList();
IEnumerable<Guid> listDepIDLimit = null;
if (listPlanSetRund[i].Nav_ListSetDepObject != null && listPlanSetRund[i].Nav_ListSetDepObject.Any())
{
listDepIDLimit = listPlanSetRund[i].Nav_ListSetDepObject.Where(e => e.DEPARTMENT_ID.HasValue).Select(e => e.DEPARTMENT_ID.Value);
}
IEnumerable<int> listMineTypeEnums = null;
if (listPlanSetRund[i].Nav_ListSetObject != null && listPlanSetRund[i].Nav_ListSetObject.Any())
{
listMineTypeEnums = listPlanSetRund[i].Nav_ListSetObject.Select(e => (int)e.CHECKOBJECT);
}
//所有符合条件的班组组长
//Nav_ListSetObject
//Nav_ListSetDepObject
//找到 公司 部门 车间 班组 级别 对应安全员
DEPARTMENT_TYPE = listPlanSetRund[i].Nav_CheckTypeLevel.Nav_Enums.VALUE;//检查等级 和部门等级匹配
//需要做全检查的所有部门
List<T_FM_DEPARTMENT> listDepartMent = null;
Expression<Func<T_FM_DEPARTMENT, bool>> expressionDepartMent = e => !e.IS_DELETED && e.ENABLE_STATUS == 0 && e.DEPARTMENT_TYPE == DEPARTMENT_TYPE && e.DEPARTMENT_STATUS == (int)FMDepartmentStatus.;
if (listDepIDLimit != null && listDepIDLimit.Any())
{
expressionDepartMent = expressionDepartMent.And(e => listDepIDLimit.Contains(e.ID));
}
if (listMineTypeEnums != null && listMineTypeEnums.Any())
{
expressionDepartMent = expressionDepartMent.And(e => e.Nav_ProdutionUnit.FirstOrDefault(e => listMineTypeEnums.Contains(e.Nav_Enums.VALUE)) != null);
}
//生产部门
listDepartMent = GetEntities(expressionDepartMent, null, "Nav_ProdutionUnit.Nav_Enums").ToList();
if (listDepartMent == null || !listDepartMent.Any())
{
continue;
}
IEnumerable<Guid> ListUserID = null;
if (listDepartMent.Count > 0)
{
ListUserID = listDepartMent.Where(e => e.USER_ID.HasValue).Select(e => e.USER_ID.Value);
}
if (ListUserID == null || !ListUserID.Any())
{
continue;
}
List<T_FM_USER> listUSER = GetEntities<T_FM_USER>(e => ListUserID.Contains(e.ID), null, null).ToList();
DateTime deNowDateEnd = DateTime.Now.Date.AddDays(1).AddSeconds(-1);//今天最后1秒
foreach (var item in listUSER)
{
depTemp = listDepartMent.FirstOrDefault(e => e.ID == item.DEPARTMENT_ID);
if (depTemp != null)
{
listDepartment.Add(depTemp);
listFMUserNotice.Add(item);//班长
listEndTime.Add(deNowDateEnd);
}
}
}
else
{
//有检查时间 就检查时间有排班
ChcekDateTime = Convert.ToDateTime(dtFirst.ToString("yyyy-MM-dd") + listPlanSetRund[i].CHECKTIME.Value.ToString(" HH:mm:ss"));
//e.Nav_DepartMent.DEPARTMENT_TYPE == 2
listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME <= ChcekDateTime && e.END_TIME >= ChcekDateTime, null, pathScheduling).ToList();
//listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME != e.END_TIME && e.START_TIME.Date == dtFirst.Date, null, pathScheduling).ToList();
//找到今天有上班的 班组 对应 班长
//排班 T_FM_DEPARTMENT_SCHEDULING 班组T_FM_TEAM 班长CHARGE_PERSON_ID 人员Nav_ChargePerson 用户Nav_User
}
if (listTeamScheduling != null && listTeamScheduling.Count > 0)
{
for (int j = 0; j < listTeamScheduling.Count; j++)
//listPlanSetRund[i].CHECKTIME "Nav_ProdutionUnit.Nav_Enums"
List<T_FM_DEPARTMENT_SCHEDULING> listTeamScheduling = null;
string[] pathScheduling = { "Nav_DepartMent", "Nav_Team.Nav_ChargePerson.Nav_User.Nav_Department.Nav_Enums" };//, "Nav_Team.Nav_ChargePerson.Nav_DepartMent"
if (listPlanSetRund[i].CHECKTIME == null)
{
chargePerson = listTeamScheduling[j].Nav_Team.Nav_ChargePerson;//班长
//listDepartment.Add(listTeamScheduling[j].Nav_DepartMent);
//没有检查时间 就当天 有排班
listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME != e.END_TIME, null, pathScheduling).ToList();
}
else
{
//有检查时间 就检查时间有排班
ChcekDateTime = Convert.ToDateTime(dtFirst.ToString("yyyy-MM-dd") + listPlanSetRund[i].CHECKTIME.Value.ToString(" HH:mm:ss"));
//e.Nav_DepartMent.DEPARTMENT_TYPE == 2
listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME <= ChcekDateTime && e.END_TIME >= ChcekDateTime, null, pathScheduling).ToList();
//listTeamScheduling = this.GetOrderEntities<T_FM_DEPARTMENT_SCHEDULING>(e => e.ENABLE_STATUS == 0 && e.DATE_TIME == dtFirst && e.START_TIME != e.END_TIME && e.START_TIME.Date == dtFirst.Date, null, pathScheduling).ToList();
listDepartment.Add(chargePerson.Nav_User.Nav_Department != null ? chargePerson.Nav_User.Nav_Department : listTeamScheduling[j].Nav_DepartMent); //班长所在部门 不然审批流不好找 BS034
//listDepartment.Add(listTeamScheduling[j].Nav_DepartMent != null ? listTeamScheduling[j].Nav_DepartMent : chargePerson.Nav_DepartMent); //班长所在部门
}
listFMUserNotice.Add(chargePerson.Nav_User);//班长
listEndTime.Add(listTeamScheduling[j].END_TIME);//默认当班结束时间
if (listTeamScheduling != null && listTeamScheduling.Count > 0)
{
for (int j = 0; j < listTeamScheduling.Count; j++)
{
chargePerson = listTeamScheduling[j].Nav_Team.Nav_ChargePerson;//班长
//listDepartment.Add(listTeamScheduling[j].Nav_DepartMent);
listDepartment.Add(chargePerson.Nav_User.Nav_Department != null ? chargePerson.Nav_User.Nav_Department : listTeamScheduling[j].Nav_DepartMent); //班长所在部门 不然审批流不好找 BS034
//listDepartment.Add(listTeamScheduling[j].Nav_DepartMent != null ? listTeamScheduling[j].Nav_DepartMent : chargePerson.Nav_DepartMent); //班长所在部门
listFMUserNotice.Add(chargePerson.Nav_User);//班长
listEndTime.Add(listTeamScheduling[j].END_TIME);//默认当班结束时间
}
}
}
}
@ -700,25 +767,6 @@ namespace APT.PP.WebApi.Controllers.Api.PP
#region
//CHECKOBJECT = GetCHECKOBJECT(listDepartment[j], listFMUserNotice[j].ORG_ID.Value, listAreObject);
//if (listPlanSetRund[i].Nav_ListSetObject != null && listPlanSetRund[i].Nav_ListSetObject.Any())
//{
// checkObject = listPlanSetRund[i].Nav_ListSetObject.FirstOrDefault(e => (int)e.CHECKOBJECT == CHECKOBJECT);
// if (checkObject == null)
// {
// //有限制 不满足
// if (listPlanSetRund[i].Nav_ListSetDepObject == null || !listPlanSetRund[i].Nav_ListSetDepObject.Any())
// {
// continue;
// }
// }
//}
#endregion
if (listPlanSetRund[i].Nav_ListSetDepObject != null && listPlanSetRund[i].Nav_ListSetDepObject.Any())
{
checkDetObject = listPlanSetRund[i].Nav_ListSetDepObject.FirstOrDefault(e => e.DEPARTMENT_ID.Value == listDepartment[j].ID);
@ -1436,13 +1484,13 @@ namespace APT.PP.WebApi.Controllers.Api.PP
this.UnifiedCommit(() =>
{
if (task != null)//跑批更新
UpdateEntityNoCommit(task);
UpdateEntityNoCommit(task);
if (listTaskBS057.Count > 0)//检查登记
BantchSaveEntityNoCommit(listTaskBS057);
BantchSaveEntityNoCommit(listTaskBS057);
if (listUpdateDetailUser.Count > 0)//检查人是主要负责人
BantchSaveEntityNoCommit(listUpdateDetailUser);
BantchSaveEntityNoCommit(listUpdateDetailUser);
BantchSaveEntityNoCommit(checks);//检查记录表单 STATUCHECK (int)HMAuditStatusEnmu.审批中;
});
});
}
catch (Exception ex)