自测问题修复
This commit is contained in:
		
							parent
							
								
									722f55910a
								
							
						
					
					
						commit
						3fc746f65e
					
				@ -445,15 +445,17 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                    });
 | 
			
		||||
                    var loginUser = users.FirstOrDefault(t => t.ID == loginUserId);
 | 
			
		||||
                    var departUser = this.GetEntity<T_FM_DEPARTMENT>(t => (t.USER_ID == loginUserId || t.CHARGEUSER_ID == loginUserId) && (t.NAME.Contains("安全环保") || t.NAME.Contains("安环部")));
 | 
			
		||||
                    if (departUser != null || (loginUser.Nav_ApproveRole!=null &&loginUser.Nav_ApproveRole.NAME.Contains("安环部负责人")))
 | 
			
		||||
                    if (departUser != null || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部负责人")) || (loginUser.Nav_ApproveRole != null && loginUser.Nav_ApproveRole.NAME.Contains("安环部安全员")))
 | 
			
		||||
                    {
 | 
			
		||||
                        var tempSafeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门安全员"));
 | 
			
		||||
                        var tempSafe = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部安全员"));
 | 
			
		||||
                        if (tempSafe != null)
 | 
			
		||||
                        if (tempSafe != null && tempSafeD != null && appdetails.Count() > 1 && tempSafeD.APPROVE_USER_ID == tempSafe.APPROVE_USER_ID)
 | 
			
		||||
                        {
 | 
			
		||||
                            appdetails.Remove(tempSafe);
 | 
			
		||||
                        }
 | 
			
		||||
                        var tempChargeD = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("部门负责人"));
 | 
			
		||||
                        var tempCharge = appdetails.FirstOrDefault(m => m.Nav_ApproveRole != null && m.Nav_ApproveRole.NAME.Contains("安环部负责人"));
 | 
			
		||||
                        if (tempCharge != null)
 | 
			
		||||
                        if (tempCharge != null && tempChargeD != null && appdetails.Count() > 1 && tempChargeD.APPROVE_USER_ID == tempCharge.APPROVE_USER_ID)
 | 
			
		||||
                        {
 | 
			
		||||
                            appdetails.Remove(tempCharge);
 | 
			
		||||
                        }
 | 
			
		||||
@ -1481,6 +1483,8 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                    GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
 | 
			
		||||
                    if (departmentIds.Any())
 | 
			
		||||
                    {
 | 
			
		||||
                        var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                        var chargeSafe = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                        foreach (var item in departmentIds)
 | 
			
		||||
                        {
 | 
			
		||||
                            var userTemp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
@ -1488,21 +1492,18 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                            {
 | 
			
		||||
                                if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门负责人")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
                                                break;
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                if (user.DEPARTMENT_ID.HasValue)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                var dep = GetEntity<T_FM_DEPARTMENT>(user.DEPARTMENT_ID.Value);
 | 
			
		||||
                                                if (dep != null)
 | 
			
		||||
@ -1514,9 +1515,6 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                                                    break;
 | 
			
		||||
                                                }
 | 
			
		||||
                                            }
 | 
			
		||||
                                                else
 | 
			
		||||
                                                    continue;
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        {
 | 
			
		||||
@ -1525,32 +1523,18 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                                        }
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var departInfo=this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                        if (departInfo != null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            if (departInfo.USER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                            else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            { continue; }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                }
 | 
			
		||||
                                else if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门安全员")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    if (chargeSafe != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == chargeSafe.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
@ -1558,19 +1542,6 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                if (user.DEPARTMENT_ID.HasValue)
 | 
			
		||||
                                                {
 | 
			
		||||
                                                    var dep = GetEntity<T_FM_DEPARTMENT>(user.DEPARTMENT_ID.Value);
 | 
			
		||||
                                                    if (dep != null)
 | 
			
		||||
                                                    {
 | 
			
		||||
                                                        if (dep.USER_ID.HasValue)
 | 
			
		||||
                                                        { approveId = dep.USER_ID.Value; }
 | 
			
		||||
                                                        else if (dep.CHARGEUSER_ID.HasValue)
 | 
			
		||||
                                                        { approveId = dep.CHARGEUSER_ID.Value; }
 | 
			
		||||
                                                        break;
 | 
			
		||||
                                                    }
 | 
			
		||||
                                                }
 | 
			
		||||
                                                else
 | 
			
		||||
                                                continue;
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
@ -1582,40 +1553,14 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var departInfo = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                        if (departInfo != null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            if (departInfo.USER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                            else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            { continue; }
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                else
 | 
			
		||||
                                {
 | 
			
		||||
                                    continue;
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                                }
 | 
			
		||||
                                else
 | 
			
		||||
                                {
 | 
			
		||||
                                    var departInfo = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                    if (departInfo != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        if (departInfo.USER_ID != null)
 | 
			
		||||
                                        { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                        else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                        { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        { continue; } 
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                            else
 | 
			
		||||
                            {
 | 
			
		||||
                                approveId = userTemp?.ID;
 | 
			
		||||
@ -1627,7 +1572,6 @@ namespace APT.BaseData.Services.Services.FM
 | 
			
		||||
            }
 | 
			
		||||
            return approveId;
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        /// <summary>
 | 
			
		||||
        /// 根据部门树查找审核人
 | 
			
		||||
        /// </summary>
 | 
			
		||||
 | 
			
		||||
@ -591,7 +591,18 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                var mineType = APT.Infrastructure.Api.AppContext.CurrentSession.MineType;
 | 
			
		||||
                var tempList = mineType.Split(",").ToList();
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_STEP, bool>> expressionStep = e => !e.IS_DELETED && e.STATUS == STATUSEnum.启用;
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum.启用 && tempList.Contains(t.MineType.ToString());
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum.启用;
 | 
			
		||||
                if (tempList != null && tempList.Any())
 | 
			
		||||
                {
 | 
			
		||||
                    bool isExsis = false;
 | 
			
		||||
                    foreach (var temp in tempList)
 | 
			
		||||
                    {
 | 
			
		||||
                        if (!string.IsNullOrEmpty(temp))
 | 
			
		||||
                            isExsis = true;
 | 
			
		||||
                    }
 | 
			
		||||
                    if (isExsis)
 | 
			
		||||
                        expressionLink = expressionLink.And(t => tempList.Contains(t.MineType.ToString()));
 | 
			
		||||
                }
 | 
			
		||||
                var operationLink = this.GetEntities<T_HM_OPERATION_LINK>(expressionLink, new BaseFilter(pageFilter.OrgId)).Select(t => t.OPERATION_STEP_ID).Distinct().ToList();
 | 
			
		||||
                expressionStep = expressionStep.And(e => operationLink.Contains(e.ID));
 | 
			
		||||
                var info = this.GetOrderEntities<T_HM_OPERATION_STEP>(expressionStep, pageFilter, null);
 | 
			
		||||
@ -613,7 +624,18 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                var mineType = APT.Infrastructure.Api.AppContext.CurrentSession.MineType;
 | 
			
		||||
                var tempList = mineType.Split(",").ToList();
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_STEP, bool>> expressionStep = e => !e.IS_DELETED && e.STATUS == STATUSEnum.启用;
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum.启用 && tempList.Contains(t.MineType.ToString());
 | 
			
		||||
                Expression<Func<T_HM_OPERATION_LINK, bool>> expressionLink = t => !t.IS_DELETED && t.STATUS == (int)STATUSEnum.启用;
 | 
			
		||||
                if (tempList != null && tempList.Any())
 | 
			
		||||
                {
 | 
			
		||||
                    bool isExsis = false;
 | 
			
		||||
                    foreach (var temp in tempList)
 | 
			
		||||
                    {
 | 
			
		||||
                        if (!string.IsNullOrEmpty(temp))
 | 
			
		||||
                            isExsis = true;
 | 
			
		||||
                    }
 | 
			
		||||
                    if(isExsis)
 | 
			
		||||
                        expressionLink = expressionLink.And(t => tempList.Contains(t.MineType.ToString()));
 | 
			
		||||
                }
 | 
			
		||||
                var operationLink = this.GetEntities<T_HM_OPERATION_LINK>(expressionLink, new BaseFilter(pageFilter.OrgId)).Select(t=>t.OPERATION_STEP_ID).Distinct().ToList();
 | 
			
		||||
                expressionStep = expressionStep.And(e => operationLink.Contains(e.ID));
 | 
			
		||||
                var info = this.GetOrderPageEntities<T_HM_OPERATION_STEP>(expressionStep, pageFilter, null);
 | 
			
		||||
@ -881,7 +903,21 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
            if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.公司)
 | 
			
		||||
            {
 | 
			
		||||
                var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
 | 
			
		||||
                if (approveIds.Count() == 1)
 | 
			
		||||
                if (approveIds.Count() == 0)
 | 
			
		||||
                {
 | 
			
		||||
                    if (approveTempDetail.Nav_ApproveRole.NAME == "安环部负责人")
 | 
			
		||||
                    {
 | 
			
		||||
                        var dep = GetEntity<T_FM_DEPARTMENT>(t => (t.NAME.Contains("安全环保") || t.NAME.Contains("安环部")) && t.DEPARTMENT_TYPE == 0 && t.ENABLE_STATUS == 0);
 | 
			
		||||
                        if (dep != null)
 | 
			
		||||
                        {
 | 
			
		||||
                            if (dep.USER_ID.HasValue)
 | 
			
		||||
                            { approveId = dep.USER_ID.Value; }
 | 
			
		||||
                            else if (dep.CHARGEUSER_ID.HasValue)
 | 
			
		||||
                            { approveId = dep.CHARGEUSER_ID.Value; }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                else if (approveIds.Count() == 1)
 | 
			
		||||
                {
 | 
			
		||||
                    approveId = approveIds.FirstOrDefault();
 | 
			
		||||
                }
 | 
			
		||||
@ -910,6 +946,8 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                    GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
 | 
			
		||||
                    if (departmentIds.Any())
 | 
			
		||||
                    {
 | 
			
		||||
                        var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                        var chargeSafe = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                        foreach (var item in departmentIds)
 | 
			
		||||
                        {
 | 
			
		||||
                            var userTemp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
@ -917,21 +955,18 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                            {
 | 
			
		||||
                                if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门负责人")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
                                                break;
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                if (user.DEPARTMENT_ID.HasValue)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                var dep = GetEntity<T_FM_DEPARTMENT>(user.DEPARTMENT_ID.Value);
 | 
			
		||||
                                                if (dep != null)
 | 
			
		||||
@ -943,9 +978,6 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                                    break;
 | 
			
		||||
                                                }
 | 
			
		||||
                                            }
 | 
			
		||||
                                                else
 | 
			
		||||
                                                    continue;
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        {
 | 
			
		||||
@ -954,32 +986,18 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                        }
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var departInfo = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                        if (departInfo != null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            if (departInfo.USER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                            else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            { continue; }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                }
 | 
			
		||||
                                else if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门安全员")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    if (chargeSafe != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == chargeSafe.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
@ -987,19 +1005,6 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                if (user.DEPARTMENT_ID.HasValue)
 | 
			
		||||
                                                {
 | 
			
		||||
                                                    var dep = GetEntity<T_FM_DEPARTMENT>(user.DEPARTMENT_ID.Value);
 | 
			
		||||
                                                    if (dep != null)
 | 
			
		||||
                                                    {
 | 
			
		||||
                                                        if (dep.USER_ID.HasValue)
 | 
			
		||||
                                                        { approveId = dep.USER_ID.Value; }
 | 
			
		||||
                                                        else if (dep.CHARGEUSER_ID.HasValue)
 | 
			
		||||
                                                        { approveId = dep.CHARGEUSER_ID.Value; }
 | 
			
		||||
                                                        break;
 | 
			
		||||
                                                    }
 | 
			
		||||
                                                }
 | 
			
		||||
                                                else
 | 
			
		||||
                                                continue;
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
@ -1011,40 +1016,14 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var departInfo = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                        if (departInfo != null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            if (departInfo.USER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                            else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                            { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            { continue; }
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                else
 | 
			
		||||
                                {
 | 
			
		||||
                                    continue;
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                                }
 | 
			
		||||
                                else
 | 
			
		||||
                                {
 | 
			
		||||
                                    var departInfo = this.GetEntity<T_FM_DEPARTMENT>(t => t.ID == user.DEPARTMENT_ID);
 | 
			
		||||
                                    if (departInfo != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        if (departInfo.USER_ID != null)
 | 
			
		||||
                                        { approveId = departInfo.USER_ID; }
 | 
			
		||||
                                        else if (departInfo.CHARGEUSER_ID != null)
 | 
			
		||||
                                        { approveId = departInfo.CHARGEUSER_ID; }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        { continue; }
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                            }
 | 
			
		||||
                            else
 | 
			
		||||
                            {
 | 
			
		||||
                                approveId = userTemp?.ID;
 | 
			
		||||
 | 
			
		||||
@ -389,7 +389,26 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
        {
 | 
			
		||||
            Guid? approveId = null;
 | 
			
		||||
            if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.公司)
 | 
			
		||||
                approveId = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID)?.ID;
 | 
			
		||||
            {
 | 
			
		||||
                var approveIds = users.Where(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID).Select(t => t.ID).ToList();
 | 
			
		||||
                if (approveIds.Count() == 0)
 | 
			
		||||
                {
 | 
			
		||||
                    if (approveTempDetail.Nav_ApproveRole.NAME == "安环部负责人")
 | 
			
		||||
                    {
 | 
			
		||||
                        var dep = GetEntity<T_FM_DEPARTMENT>(t => (t.NAME.Contains("安全环保") || t.NAME.Contains("安环部")) && t.DEPARTMENT_TYPE == 0 && t.ENABLE_STATUS == 0);
 | 
			
		||||
                        if (dep != null)
 | 
			
		||||
                        {
 | 
			
		||||
                            if (dep.USER_ID.HasValue)
 | 
			
		||||
                            { approveId = dep.USER_ID.Value; }
 | 
			
		||||
                            else if (dep.CHARGEUSER_ID.HasValue)
 | 
			
		||||
                            { approveId = dep.CHARGEUSER_ID.Value; }
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
                else if (approveIds.Count() == 1)
 | 
			
		||||
                {
 | 
			
		||||
                    approveId = approveIds.FirstOrDefault();
 | 
			
		||||
                }
 | 
			
		||||
                else
 | 
			
		||||
                {
 | 
			
		||||
                    var user = users.FirstOrDefault(t => t.ID == loginUserId);
 | 
			
		||||
@ -399,6 +418,24 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                        GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
 | 
			
		||||
                        if (departmentIds.Any())
 | 
			
		||||
                        {
 | 
			
		||||
                            var dep = GetEntity<T_FM_DEPARTMENT>(t => departmentIds.Contains(t.ID) && t.DEPARTMENT_TYPE != 3 && approveIds.Contains((Guid)t.CHARGEUSER_ID));
 | 
			
		||||
                            if (dep != null)
 | 
			
		||||
                                approveId = dep.CHARGEUSER_ID;
 | 
			
		||||
                        }
 | 
			
		||||
                    }
 | 
			
		||||
                }
 | 
			
		||||
            }
 | 
			
		||||
            else
 | 
			
		||||
            {
 | 
			
		||||
                var user = users.FirstOrDefault(t => t.ID == loginUserId);
 | 
			
		||||
                if (user.DEPARTMENT_ID != null)
 | 
			
		||||
                {
 | 
			
		||||
                    List<Guid> departmentIds = new List<Guid>();
 | 
			
		||||
                    GetDepartmentId((Guid)user.DEPARTMENT_ID, ref departmentIds);
 | 
			
		||||
                    if (departmentIds.Any())
 | 
			
		||||
                    {
 | 
			
		||||
                        var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                        var chargeSafe = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                        foreach (var item in departmentIds)
 | 
			
		||||
                        {
 | 
			
		||||
                            var userTemp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
@ -406,12 +443,30 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                            {
 | 
			
		||||
                                if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门负责人")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部负责人");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                            continue;
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
                                                break;
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                var dep = GetEntity<T_FM_DEPARTMENT>(user.DEPARTMENT_ID.Value);
 | 
			
		||||
                                                if (dep != null)
 | 
			
		||||
                                                {
 | 
			
		||||
                                                    if (dep.USER_ID.HasValue)
 | 
			
		||||
                                                    { approveId = dep.USER_ID.Value; }
 | 
			
		||||
                                                    else if (dep.CHARGEUSER_ID.HasValue)
 | 
			
		||||
                                                    { approveId = dep.CHARGEUSER_ID.Value; }
 | 
			
		||||
                                                    break;
 | 
			
		||||
                                                }
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        {
 | 
			
		||||
                                            approveId = temp?.ID;
 | 
			
		||||
@ -419,16 +474,28 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                        }
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                else if (approveTempDetail.DEPARTMENT_TYPE == (int)FMDepartmentType.部门 && approveTempDetail.Nav_ApproveRole != null && approveTempDetail.Nav_ApproveRole.NAME == "部门安全员")
 | 
			
		||||
                                {
 | 
			
		||||
                                    var charge = this.GetEntity<T_PF_APPROVAL_ROLE>(t => t.NAME == "安环部安全员");
 | 
			
		||||
                                    if (charge != null)
 | 
			
		||||
                                    if (chargeSafe != null)
 | 
			
		||||
                                    {
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == charge.ID && departmentIds.Contains((Guid)x.DEPARTMENT_ID));
 | 
			
		||||
                                        var temp = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == chargeSafe.ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                        if (temp == null)
 | 
			
		||||
                                        {
 | 
			
		||||
                                            var temp2 = users.FirstOrDefault(x => x.APPROVE_ROLE_ID == approveTempDetail.APPROVE_ROLE_ID && x.DEPARTMENT_ID == item);
 | 
			
		||||
                                            if (temp2 != null)
 | 
			
		||||
                                            {
 | 
			
		||||
                                                approveId = temp2.ID;
 | 
			
		||||
                                                break;
 | 
			
		||||
                                            }
 | 
			
		||||
                                            else
 | 
			
		||||
                                            {
 | 
			
		||||
                                                continue;
 | 
			
		||||
                                            }
 | 
			
		||||
                                        }
 | 
			
		||||
                                        else
 | 
			
		||||
                                        {
 | 
			
		||||
                                            approveId = temp?.ID;
 | 
			
		||||
@ -436,8 +503,10 @@ namespace APT.FO.WebApi.Controllers
 | 
			
		||||
                                        }
 | 
			
		||||
                                    }
 | 
			
		||||
                                    else
 | 
			
		||||
                                    {
 | 
			
		||||
                                        continue;
 | 
			
		||||
                                    }
 | 
			
		||||
                                }
 | 
			
		||||
                                else
 | 
			
		||||
                                {
 | 
			
		||||
                                    continue;
 | 
			
		||||
 | 
			
		||||
@ -31,7 +31,7 @@ namespace APT.HM.WebApi.Controllers.Api
 | 
			
		||||
        {
 | 
			
		||||
            return SafeExecute(() =>
 | 
			
		||||
            {
 | 
			
		||||
                var history = this.GetEntity<T_HM_OPERATION_LINK>(t => t.OPERATION_STEP_ID == entity.OPERATION_STEP_ID, "Nav_OperationStep");
 | 
			
		||||
                var history = this.GetEntity<T_HM_OPERATION_LINK>(t => t.OPERATION_STEP_ID == entity.OPERATION_STEP_ID && t.ID != entity.ID, "Nav_OperationStep");
 | 
			
		||||
                if (history != null)
 | 
			
		||||
                    throw new Exception("已存在名为"+ history.Nav_OperationStep.NAME+"的数据,请修改作业名称");
 | 
			
		||||
                var details = entity.Nav_LinkPost;
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user